bpatcher
を使って賢く便利にbpatcher
のめんどくさくて賢い使い方をまとめました。
patcher
のようにパッチ内部にbpatcher
を埋め込むbpatcher
はサブパッチの内容を表示しつつ、
そのパッチの機能を利用することができるオブジェクトだが、
普通のpatcher
のように親となるMaxパッチにサブパッチを埋め込むことができる。
方法は、インスペクタの Embed Patcher in Parent にチェックを入れるだけ
埋め込まれたサブパッチを編集するには
patcher
で引数を利用するにはpatcherargs
の出力を利用する必要があったが、
bpatcher
では#1 #2 #3...
という埋め込み型の引数を利用することができる。
別ファイルのパッチをサブパッチとして読み込む場合に利用可能だったものが、 内包するパッチでも利用できる。
send
/receive
の名前にするsend
/receive
の名前も引数で与えることができる。
内部で用いるsend/receive
の名前を一意にしたい場合は#0
を用いればよいが、
同じ処理をするパッチが複数必要で、それぞれbpatcher
内外でsend
/receive
を用いたい時にこの方法は有効。
#0
を用いてしまうと毎回名前が変化してしまうため、内外でのsend
/receive
は困難になる。
bpatcher
の内部にbpatcher
を作るといった事はもちろん可能で、
それぞれ引数を利用することも可能。
そしてサブパッチの引数に自身の引数を利用することができる。
open in presentation にチェックが入っているサブパッチはプレゼンテーションモードで開かれる。
内部埋め込みされているサブパッチも Command + Shift + i でパッチャーインスペクタを開き、
opent in presentation にチェックを入れた後、再度パッチを開き直すか、bpatcher
をコピーすると
プレゼンテーションモードでサブパッチが表示される。