Max備忘録

[Max備忘録その5.1]Messageの活用と視覚化

5に書いておいても良かったのですが、あまり詰め込みすぎると混乱の原因になるので、今回はこのような形に…。

さて、題名の通り今回はMessageオブジェクトと、値の視覚化について補足です。あくまで”パッチを見やすくする”のと”Messageを活用して予期せぬエラーを起こさないようにする”の2点です。

最大値と最小値を設定する

その5で作ったパッチを見てみましょう。

おや……? maxよりminの方の値が大きくなっていますね。このプログラムだとrandomから出力される値が固定されるぐらいですみますが、より大きく複雑なパッチだとエラーの原因になったりします。ですがこれをどうやって回避したものでしょうか。
numberオブジェクトは個別に最低値、最大値を設定できますので、それを活用しましょう。minのnumberオブジェクトを選択してキーボードで”command + i”を押します。するとこのようにインスペクタウインドウが開きます。(右側部分)

 

ここの一番下にminimum,maximumという項目があります。これを設定することでmaxがminより小さくなってしまったり、その逆を防ごうというわけです。しかし、どうやってこのminやmaxを設定しましょうか。インスペクタウインドウで設定するだけでは、numberを動かす度に変わってしまう値に対応できません。

そこで活用するのがMessageオブジェクトです。このオブジェクトはあらかじめ設定したテキストメッセージをオブジェクトに送ったり、オブジェクトから出力されたメッセージを受け取って表示することができます。実際にやってみましょう。

messageオブジェクトを作るには上のツールバーから選択するか、キーボードの”m”を押します。

そしてこのようにパッチを組みます。”max $1″と”min $1″はそれぞれ最大値と最小値を設定するMessageオブジェクトです。両方とも$1という部分がありますが、これは受け取った値に置き換えられてメッセージを送ります。つまりmax側のアウトレットから57という数字が出たとき、”max $1″は”max 57″というメッセージを送信しているのです。これによってmin側のmaximumは57に設定される、というわけです。

視覚化

さて、今度はそれぞれの値を見やすくしようと思います。数字を見やすくする、というとスライダー類が思い浮かびますね。その中でも今回は範囲指定なのでそれに適した”rslider”を使います。(おそらくRange-Sliderの略かと思われます。)

オブジェクトをつくり、rsliderと入力するとこのようにrsliderが出てきます。

このままだとアレなので、maxとminのnumberオブジェクトに合わせた形に変更しましょう。四隅の四角をドラッグ&ドロップすれば形を変えることが出来ます。
このrsliderは範囲を設定することができ、最小値と最大値をそれぞれ左右のアウトレットから出力します。

しかし、このままだとnumberとrsliderの連携がとれないので、pattrというオブジェクトを使います。pattrは色々な機能を備えていますが、基本的には値を保持(store)するものだと考えていただいて構いません。そんな値を保持してくれるpattrをこのように繋ぎます。(あとでつなぎ替えるのでbondoと+に繋がるパッチコードは消してください。)

そして今度は両側のpattrから先ほどのbondoと+へパッチコードを繋いでやります。

こうすることで、numberとrsliderの同期がとれ、パッチが見やすくなりました。

今回はこれで終わりです。次回はサブパッチャーについて。

[Max備忘録その5]”random”と範囲設定

さて、第五回。Maxには色々なオブジェクトがありますが、今回はその中でもランダム系にフォーカスしていきたいと思います。
今回はrandomと範囲の設定の仕方です。randamはその名のとおり、値をランダムに出力するオブジェクトです。早速やってみましょう。

続きを読む

[Max備忘録4]Hot inletとCold inlet

Inletとは

さて、前回とは変わって今回はMaxの処理系の話になります。
それぞれオブジェクトを作ってインレットとアウトレットにパッチコードを繋げると言う話を一番始めの回(こちら)でしたと思いますが、インレットには2種類あるのです。
マウスオーバー(マウスカーソルを上に合わせること)をすると赤いリングが出るものと青いリングが出るもの二つがあると思います。それぞれ赤い方を「ホットインレット(hot inlet)」青い方を「コールドインレット(cold inlet)」と呼びます。

続きを読む

[Max備忘録3]bang信号とは

bang信号とは

Maxにおけるオブジェクトは基本的に”bang”と呼ばれる信号で動いています。これが何か、説明するよりも実際に見てみた方が早いでしょう。

続きを読む

[Max備忘録その1]Max7基礎知識

マルチメディアアートの標準言語として、アーティストでも使いやすいビジュアルプログラミング言語として、各方面で人気を博しているMax7について、解説していこうとおもいます。

「プログラミングなんて難しそう…」なんて思ってるそこの貴方、これはビジュアルプログラミングなのでパズルをするようにプログラミングができちゃうんです。やってみると以外と簡単。自作シンセだって作れてしまいます。頑張っていきましょう! 続きを読む