記事最終更新日:2014/09/08
こちらの動画にて説明、配布しているPMDE/PMXE用のプラグインに機能を追加しました。
しかし、これがよく考えたら何に使うのかよくわからなくなったので、ブロマガ記事でひっそり説明することにとどめます。
追加した機能というのが「空の表示枠でも削除しないものを指定できる機能」です。
普通は空の表示枠は邪魔なだけです。なのでプラグインは表示枠の並べ替えの最終段階で空の表示枠を削除します。追加機能はこの基本機能を変えるよう指定できるというものなのですが、こんな機能、よく考えたら要らないですよね。ということで、必要ないと思った方はこの記事をスルーして、これまで通りにプラグインをお使いください。
この機能を考えた当初は、「他のプラグインで追加するボーンの表示枠に指定できるように予め希望の位置に空の表示枠を作成しておく」、「----などとセパレーター用途で空の表示枠を使う」といったことを想定していました。
表示枠の整理は出来るだけこのプラグインで済ませたいと希望している方にとって、プラグイン適用の後に空の表示枠を追加するのは不満なんじゃないかと思ったわけです。
もし空の表示枠を残したいというのであれば、次のようにしてください。
1.拡張定義ファイルを用意してください。
これは定義ファイルの名前の最後に「_x」がついた名前のファイルです。定義ファイルが「表示枠定義ファイル.txt」なら「表示枠定義ファイル_x.txt」となります。
拡張定義ファイルは定義ファイルと同じフォルダに保存してください。
さらに1行目に「BoneFrameSorter extended definition 1.0」と書く必要があります。1行目にこれ以外の文字や空白があるとプラグインに拡張定義ファイルとして認識されません。
定義ファイルと拡張定義ファイルは別々に用意してください。1つのファイルにまとめることはできません。
2. [Node:Protected]属性をボーンに指定してください。
拡張定義ファイルの中に「[Node:Protected]」という行を書き、その下に「+表示枠名」という行を必要なだけ書きます。
拡張定義ファイルの例
BoneFrameSorter extended definition 1.0これはセパレーター用の空表示枠をつくろうというもので、定義ファイルの方にこれらの表示枠を登録する位置を指定します。
[Node:Protected]
+-------------------------1
+-------------------------2
+-------------------------3
注意点は、プラグインは同じ名前の複数の表示枠を1つにまとめてしまうので、これを避けるためセパレーター用でも上記の例のように末尾に数字を振るなどして違う名前にしなければならないことです。
プラグインにはいつもどおり定義ファイルを指定して実行します。プラグインは拡張定義ファイルがあるときは、実行時にそれを読み込んで属性の指定に従って「空でも削除しない」という特別な動作をします。
上記の例でプラグインを実行したモデルをMMDに表示させると、こんな結果になりました。

私はこれを見てそれほど使いやすそうに見えませんでした。拡張定義ファイルの用意とか手間がかかる割に実益がなかったという感想です。
もしこの機能がお気に召せばお使いください。
なお、おまけ機能として、間違って拡張定義ファイルのほうを、ファイルを開くダイアログで指定してしまったり、ドラッグ&ドロップしてしまったりしても、プラグインのファイル名入力ボックスには定義ファイルのほうが入力される、という機能を付けました。
定義ファイルと拡張定義ファイルは似たような名前になるので、マウスで間違って選択しやすいと思ってこうしました。