VOCALOID Editorで使用できる『Jobプラグイン』。「Jobプラグインは『Lua言語』というプログラム言語で作ることができる」とのことなので、夏季休暇の工作(?)のつもりでJobプラグインを作ってみることにしました。
Jobプラグインの中に必ず記述しなければならないモノは下記の2つ。この2つさえあれば、あとは自由に弄れる。Lua言語に用意されている関数、VOCALOID Editor側が提供している関数を駆使してノートやパラメーターを操作できる。
- function main(processParam, envParam)
Jobプラグインの心臓部。ここでノートやパラメータに効果を付与する。 - function manifest()
Jobプラグインの定義部。プラグインの名前やバージョンを記述しておく。
プログラム言語を勉強するとき、最初に作るのはやっぱりコレだと思うのです! Lua言語って文字列の扱い方が独特ですね! 面白い。
やったぜ!「Hello World」と表示するだけのJobプラグインができたぜ! pic.twitter.com/8oyEIbjHXi
— ヒナジロウ@定時で帰りたい (@hinajiro749) 2016年8月14日
せっかくなので、作ったJobプラグインを置いておきます(DL:BowlRoll)。Jobプラグインのファイル(.lua)はただのテキストだから、テキストエディター(メモ帳とか)で中身を見ることができます。ムダにコメントを付けてみたけど、参考になるかな?
おまけ
今更になって気付いたこと。パートを選択するだけでなく、Musical Editorでノートをピアノロール上に表示していないとJobプラグインを実行できないんですね。この制約のせいで“Jobプラグインのできること”が減っているように思えます。たとえば、メインのトラックを複製してハモリを自動生成したり、トラック複製後にノートの発声タイミングをズラして輪唱を自動生成したり、みたいなことができない。そういうのが作りたい(ほしい)んだけどなぁ。
ほう。musical editorでパートを開いてないとJobPlugin使えないことに、今になって気付いた
— ヒナジロウ@定時で帰りたい (@hinajiro749) 2016年8月15日