【Max】functionをfunctionで描く方法

パラメータの変更カーブを描ける[function]はとても便利です。

サブパッチに入っていたり、複数の[function]を制御するために、[function]を[function]で描く方法を紹介します。

作り方

左の[function]を描くと[send]-[receive]を通り、右のfunctionに描かれるようにします。

点のデータを取得する

[function]に「dump」メッセージを送ると、第3アウトからリストメッセージで点の情報を出力します。左端の点から順番に「X  Y」の値がそれぞれ出力されます。

“【Max】functionをfunctionで描く方法” の続きを読む

【Max】簡易的なポリフォニック・シンセサイザーを作る

シンセサイザーで複数の音を鳴らすには、その数分のオシレーターを用意する必要があります。しかしMaxで素直にそれを作るにはオブジェクトが多くなりすぎて管理が大変になります。[poly~]オブジェクトを使用すればオシレーター部分を1つ用意して、いくつにも複製することが可能です。

オシレーター・パッチを作る

ノートナンバーでオシレーターをコントロール

ノートナンバーを受けたら[mtof]を使用して周波数に変換します。周波数の数値は[cycle~]に送ります。

エンベロープを描く

[function]オブジェクトに図のようなエンベロープを描きます。

ノートナンバーと[mtof]に間に[t i b]を挟み、ノートナンバーを受けたらエンベロープを描くようにします。[cycle~]の音量は[*~]でエンベロープの値と乗算されて、カーブが描かれます。

“【Max】簡易的なポリフォニック・シンセサイザーを作る” の続きを読む

【Max】モノフォニック・シンセサイザーを作る

今回は簡易的なモノフォニック(単音)・シンセサイザーを作ってみましょう。

OSCを用意する

波形

今回はこの5つの波形を使います。それぞれの波形の種類は以下の通りになります。

cycle~サイン波/正弦波
saw~ノコギリ波
rect~矩形波
tri~三角波
noise~ホワイトノイズ
“【Max】モノフォニック・シンセサイザーを作る” の続きを読む

【Max】fromsymbolでシンボルをリストに変換する

[fromsymbol]オブジェクトを使うと、シンボルをリストに変換することができます。

ただしスペースや「-」「.」「:」など、同じ文字・記号で区切られているシンボルのみ対応しています。

使い方

シンボルを[fromsymbol]に送るとリストメッセージに変換します。

セパレーターの指定が無い場合は、半角スペースがディフォルトになります。

セパレーター

セパレーターを指定すると、任意の文字列でシンボルをリストに分割します。

アーギュメントで設定

[fromsymbol @separator 文字列]のように設定すると、その文字列が含まれる部分でセパレートします。

メッセージで設定

「separtor 文字列」のようにメッセージを送ると、その文字列でセパレートします。

【Max】tosymbolでリストをシンボルに変換する

[tosymbol]はリストメッセージを受け、シンボルに変換します。また「:」「/」でセパレートすることも可能です。

使い方

[tosymbol]にリストメッセージを送ると、各メッセージに半角スペースを入れて1つのシンボルに変換します。

セパレータ

アーギュメントで変更

[tosymbol @separator 文字列]のように設定すると、半角スペースだったセパレーターを変更できます。

メッセージで変更

「separator 文字列」のメッセージを送っても変更できます。半角スペースに戻す際は「” “」(半角スペースをダブルクォーテーションマークで囲む)にします。

セパレーターを無くす

半角スペースなどのセパレーターが必要ない場合は、アーギュメントやメッセージで「@separator」のみを指定します。

【Max】triggerで処理の順序を整える

[trigger][t]は各種のメッセージを受けると、指定したメッセージに変換して出力します。

使い方

[trigger]にアーギュメントを設定すると指定したメッセージタイプで出力されます。アーギュメントの順が出力先の順になります。

使えるメッセージタイプ

bang / bbang
int / i整数
float / f浮動小数点
symbol / s文字列
list / lリスト
“【Max】triggerで処理の順序を整える” の続きを読む

Max本『Step by Step』の日本語版が発売されました

MI7より

初学者向けMax本のGregory Taylor著『Step by step』が、2019年10月29日に発売されました。

日本語版は、Step by Step「Max/MSPで学ぶシーケンス・アドベンチャー」というタイトルです。

この本は1つのステップ・シーケンサーを作ることを目標とし、各機能を丁寧に解説しています。それにより処理の組み方を理解し、自主的にパッチを組めるレベルに到達できます。

MI7で購入された方はMUSIC EcoSystems MYページから無料ダウンロードができます。

またAmazonでも購入することができます。

【Max】bangbangで複数のbangを出力する

[bangbang]は一度のbangから複数のbangを複数出力します。処理順序を決める際に便利なオブジェクトで。

使い方

bangやメッセージを出力すると複数のアウトから同時にbangを出力します。

複数の出力を作る

アーギュメントに数値を入れると、その数のアウトレットを作ります。

省略形

[bangbang]は[b]と省略して使用することも可能です。

【Max】zmapとscaleの使い方と違い

[zmap]と[scale]は、ある範囲の入力値をある範囲にマッピングして出力するオブジェクトで似たような働きをします。しかし一部できること、できないことが異なり、使う場面が異なります。

zmapの使い方

zmapの使い方をご説明します。

使い方

[zmap 入力最小値 入力最大値 出力最小値 出力最大値]でパラメータを設定します。図では0~100の入力を0~1000に変換し出力します。

“【Max】zmapとscaleの使い方と違い” の続きを読む

【Max】selectオブジェクトの使い方

特定の数値が来た場合に処理を行いたい場合、[select][sel]オブジェクトを使用するのが便利です。

基本的な使い方

[select]オブジェクトは、アーギュメントで指定した数値が来た場合、第1アウトレットからbangを出力します。それ以外の数値が来た場合は第2アウトレットから数値を出力します。

インレットから設定

第2インレットに数値を入力すれば、合致する数値を変更できます。

複数の数値を設定する

アーギュメントに複数の数値を設定すれば、それぞれの合致を確認することができます。

合致しない数値は一番右のアウトレットから出力されます。

オブジェクト名の省略

[select]オブジェクトは頻繁に使用されるオブジェクトなので、[sel]という名前でも使用できます。