MikuMikuDanceで作成したダンスをSecond Lifeで!(きっと長文)
参考:協同組合の大会参加します
事の発端は、参考リンクのSnumaさんのブログエントリーでした。
「MikuMikuDanceってなんだろ?」と思って色々調べてみたところ、結構面白そうなツールじゃないですか!
詳しくはVPVP wikiを参照していただくとして、そのMikuMikuDanceで作成したダンスモーションをSecond Lifeに持って行くことが出来るらしいと言うことでやり方などをまとめてみました。
各ツールの提供者に感謝しながら使っていくことにしましょう。
※これはあくまでも「私がこうしたら出来た」と言うものですので、自己責任で試すようにお願いします。 <特に、今回は色々なツールをインストールしたりしますので・・・
※間違いなどがあったら、指摘していただけると助かります。
1.MikuMikuDanceを導入する
まずはこれがないと始まりません。
VPVP公式ページから、「1.3 MikuMikuDance(DirectX9 Ver)」をダウンロード、インストールします。
ついでに、その下にある「1.4 MikuMikuDance操作説明動画」を見ておくと、基本操作などが分かると思います。
2.MikuMikuDanceでダンスを作成する
・・・って簡単に書きましたが、大変だと思います(笑)。
ただ、以前記事に書いたQAvimatorと比較すると、色々と便利な機能があって使いやすいのではないかと思います。
(まぁ、あんまり使いこなしていないんですけど・・・)
例えば、補間スピードの調整(2フレーム間の補間で、始めはゆっくり次第に早く動かすようにするなど)とか、音声と併せて作りやすいとかありますね。
その一方で、MikuMikuDance内で服、髪、アクセサリを含むデータを作成していくため、ダンスだけを作りたい人にはちょっとやりにくい部分があるかもしれません。
色々なモデルデータが公開されているようなので、使いやすい物を探してみるのもいいかも。
作成が終わったら、モーションデータを保存しておきましょう。
なお、今回の説明ではMikuMikuDanceインストール時に同梱されているサンプルデータを使うことにします。
3.mioの導入
先ほど保存したモーションデータは、vmd形式なのでそのままでは使えません。
そこでbvh形式に変換するツールを導入します。
基本的には、VPVP wikiのmioに関する説明の通り(「必要なソフト(環境)を整える」>「使い方」)に進めていきます。
実は一連の作業の中で一番ハマったのがここだったりします。
気をつけなければいけないのは、「必要なソフト(環境)を整える」のところでPythonがらみのツールのバージョンをちゃんとそろえる、そしてインストール先を間違えずに指定することです。
この記事を作成したときには、Python2.6ベースで環境を整えなければいけないにもかかわらず、PyQtの参考リンクには2.5用のファイルしかなく、ハマってしまいました。
一応私はここからPyQt-Py2.6-gpl-4.5.4-1.exeをインストールしました。
他に探す場合は「PyQt Py2.6」などで検索してみると良いでしょう。
4.mioでbvh形式に変換
mioの導入が成功していれば、「vmdviewer.pyw」を実行すると「VMD Viewer」と言うウィンドウが表示されます。
まずは、画面下の「PMD File」「VMD File」 を読み込みます。
それぞれに対応する「Load」ボタンを押して、ファイルを選択しましょう。
この時指定するファイル名は、半角英数字にしておかないといけなそうです。
全角のファイル名を使用している場合は、事前に半角英数字にしておきましょう(念のため別のフォルダに別名保存しておいた方が良いかも)
読み込んだところです。
念のため、「Play」ボタンを押すと、このように確認が出来ます。
問題がなければ、画面一番下の「Export BVH」と言うボタンを押します。
保存場所を指定したら、それ以外の場所は変更せずに「Save」ボタンを押します。
特に、Languageのところは「English」のままにしておきましょう。
5.MMDBVHToSLBVHの導入
bvh形式に変換できたわけですが、実はこのままではまだSecond Lifeでは使えなかったりします。
時間が長時間すぎてアップロードできなかったり、まだデータの構造がそのまま使えるような状態ではないのです。
そこで「MMDBVHToSLBVH」というツールでSecond Lifeで使用できるよう、更に変換作業を行います。
こちらのページから「MMDBVHToSLBVH.exe」を入手します。
下の方にReadmeがあって詳しく手順が載っていますので、問題ないと思います。
6.MMDBVHToSLBVHで変換
「MMDBVHToSLBVH.exe」を実行します。
「File」>「Open」メニューを実行し、先ほど作成したbvh形式のファイルを読み込みます。
左が変換前、右が変換後となります。
念のために「Run」ボタンを押して動きを見ることが出来ます。
問題がなければ「File」>「Save As」メニューを実行し、変換後のデータを保存します。
7.念のため確認
できあがったデータをSecond Lifeにアップロードする前に、OpenSIMなどの環境があればそちらでアップロード、確認をした方が良いでしょう。
OpenSIMにメッシュのスキンしかなかったので、少し遠目に撮影しました(笑)。
8.Second Lifeにアップロード
データをSecond Lifeにアップロードして完了です。
なお、この記事の先頭に載せた参考リンクを見ると
[追記 *1]
このように「連続したアニメーション」をアップするときはループの指定が重要になります。他のダンスアニメーションのようにループさせるのですが、ループするフレームが「頭」からだと、ちょっとした読み込みの遅延などでダンスを連続させることが難しくなります。アニメーションアップのときに「ループイン」(ループを開始させる場所)を0.0から99.99などにしてダンスが終わったら最後のポーズのままで止まるようにしてあげればいいんです。お試しください。
と言う事なので、試してみるといいかも。