MKIファイルには影響度情報が入っています

今回はMKIファイルを使ってみようと思います。
MKI形式とは次の情報を定義したファイルで、mikotoから出力することが出来ます。

  • ボーン
  • モデルとボーンの関係
  • モデルとボーンの影響力

RDB2でこのファイルを読み込むと、ボーンや影響度の設定を簡単に行うことが出来ます。
便利そうなので使ってみました。

サンプルの準備

影響度設定のもうひとつのやり方をやってみたいと思います。
サンプルは前回で使用したmiku01_BONE.mqoを使います。


今回はさらにRDB2用プラグインのMKIインポーター/エクスポーターを使用します。
MKIインポーター/エクスポーターはEasy3D公式サイトUser's Plugin (RokDeBone2)の ページでも紹介されているプラグインです。
最新版は601さんのサイト、MKI Plugins 配布所(http://moemi.mithra.to/~601/601homepage/index.htm)で入手できます。
また、書籍「3Dゲーム・クックブック HSP+Easy3D入門」(著:おちゃっこ)付属のCD-ROMにも収録されています。
お好きなところから入手してください。


ダウンロードしたファイルを解凍すると、使用方法が書かれたテキストファイルが入っています。 基本的にはインストールはコレにしたがって行ってください。

一応インストール手順を簡単に書いておきます。
ダウンロードしたファイルを解凍すると次のDLLファイルが現れます。
・MkiExporter.dll … MKI出力用プラグイン
・MKIImporter.dll … MKI入力用プラグイン
RDB2がインストールされているフォルダにあるPluginsフォルダに、このDLLファイルをコピーすればインストール完了です。

mkiファイルを作る

Mikotoを起動して、miku01_BONE.mqoを開きます。
左のツリーから「project」の下にある「miku01_BONE.mqo」を右クリックして「エクスポート」を選択します。

mkiエクスポート

名前を付けて保存ダイアログが開きます。
ファイルの種類を「Mikoto Intermediate Files (*.mki)」にします。
適当なファイル名を指定して保存します。今回は「miku」とでもつけることにします。
miku.mkiが出力されました。

これでMikotoの作業は終了です。

mkiファイルをインポートする

RDB2を起動して、miku01_BONE.mqoを読み込みます。
mikoto形式で読み込むようにするのを忘れないようにしてください。

手足のボーンを動かして影響度設定がうまくいっていないことを確認してみます。…やっぱり モデルが崩れてしまいます。
(出来れば確認操作は行わずにmqoを読み込んだらすぐにmkiをインポートしたほうがいいようです。)

メニューのプラグインから「MKI Importer Ver0.07」を選択します。
先ほど作成したmiku.mkiを開きます。
影響度が反映されます。

手足のボーンを動かしてみるとうまく影響度が設定されたようです。
髪の毛の付け根が残っているので「影3」で修正します。

注意するところ

mkiファイルをインポートする場合、注意しないといけない点がいくつかあるようです。

まずmkiをインポートした後に「影1」「影2」ボタンでの操作を行うと、読み込んだ影響度がリセットされてしまうようです。
mkiを読み込んだ場合は「影1」「影2」は使わないようにしてください。
再計算の確認ダイアログ「影響度の再計算をしますか??」が出てきて再計算を行うと、設定した情報が消えるようです。
「影3」での頂点単位の影響度の設定は問題ありません。

次に、mkiはsdefの影響度の情報を出力しないそうで、影響度ボックスを使用する場合はbdefを使用する必要があるそうです。


…ということなので、これらを踏まえてmiku01_BONE.mqoをもう一度見直してみました。

髪の毛がsdefでした。orz

そのままsdefbdefに書き直して、mki出力、RDB2でmkiインポートを行うと、髪の毛の付け根も綺麗に 再現されました。髪の毛はこれが原因だったようです。

結局のところ

MKIを利用することで、前回(「Mikoto用mqoをRokDeBone2へ」)手作業で行った影響度の設定の 一部をあっさりと行うことが出来ました。
しかし、sdefが使えなかったり、影響度の修正が影3しか使えなくなるなど、若干問題がありますので注意が必要です。
便利は便利ですが事前にきっちりとmqoファイルで影響度を作っておかないと、後から修正の手間が増えるので大変です。

しかしこの辺を注意して使えば便利なツールになると思います。
ものは使いようです。


影響度ボックスについては今回もあまり触れずにおきました。
私自身まだこの辺のことは理解していないので、そうさせてもらいました。
影響度ボックスについてはまた何かわかったら書くと思います。(書かないかもしれませんが…。^_^;)