microKONTROLの鍵盤によるシーン切り替え

風立ADには現在ふたつのMIDI制御用のプラグインが装備されている。NM@BC_Default_PluginとKORG_MicroKONTROL_NativeModeのふたつ。昨日は後者を試してみた。このプラグインを使うとLCDの文字を変更出来たりしてカッコイイんだけど、鍵盤が使えない。最初この「鍵盤が使えない」という意味が分からなかったんだけど、どうも「プラグイン上から鍵盤での風立ADの制御が出来ない」ということみたい。鍵盤自体は風立ADは認識しているので、ふつうにシーンの各プラグインスクリプトを仕込めば鍵盤は使えそう。

今日はNM@BC_Default_Pluginを試してみた。これだとMIDIエクスクルーシブメッセージを使って鍵盤、パッド、スライダーなどの設定が出来る。各プラグインスクリプトを仕込むのとは違って、エクスクルーシブメッセージでの制御だと「使う時だけMIDIのやりとりをする」ので動作が軽いらしい。シーンの各プラグインスクリプトを仕込むと、シーンのレンダリングの時に常にMIDIをやり取りするようになるので動作が重くなるらしい。

NM@BC_Default_PluginはデフォルトではKazaguruma仕様になっている。これはどういう事かと言うと、Kazagurumaではシーン呼び出しがPCのキーボードを叩いて行う仕様となっているので、プラグイン上では鍵盤を叩いたらあたかもPCのキーボードを叩いたようにMIDIを使って信号を送るということになっている。キーエミュレーションである。最初これに気付かずに鍵盤をバンバン叩いていたら、画面に変な線が出てきたりしてビックリした(^_^;。

これを風立AD仕様に変更するには、鍵盤を叩いたらシーン呼び出しのスクリプトが動くようにしてやればいい。これのやり方は公式ページのフォーラムに書き込みがある。具体的にはそれぞれの鍵盤に次のスクリプトを割り当ててやればいい。

function OnNotify( iDevID , iRcvValue )
Property.CallScene( "", 0, 0 );
end;

これだとRootMixerAの今現在選択されているグループのゼロ番目のシーンが再生される。これが分かれば、後はひたすら各鍵盤に何番目のシーンを再生させるか割り付けていけばいいんだけど、ここで悩んでしまった(^_^;

風立ADではひとつのグループに80のシーンが登録出来る。microKONTROLは鍵盤の数は37。足りません(^_^;。でもオクターブをシフトさせると、この3倍の鍵盤が使える。
Root_Mixer_A側とRoot_Mixer_B側の両方を同時に鍵盤で操りたいので、鍵盤を中央でふたつに分けてやるとA側に17、B側に18(一番左端のふたつの白鍵は使わない)を割り当てることが可能。これがオクターブシフトで3セットだから、A側を17*3=51シーン、B側を18*3=54シーン鍵盤に割り当てられる。ま、これくらいあればいいかな(^_^;。今日の写真はAとBの境目が分かりやすいように鍵盤にシールを貼ってみたところ。

グループ上でのシーンの並びも鍵盤にあわせて変更したりすると使いやすくなりそう。面倒くさいけど(^_^;。

割り当ててみて、実際に鍵盤を叩いてみると、これがかなり快適!!激速でスイッチング出来る。これでまたプレイスタイルが変わるな、たぶん(^_^)。