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をコピーすると
プレゼンテーションモードでサブパッチが表示される。