VMDのモーションデータをMMD4Mecanimを使ってUnityへ取り込む方法

#デモ
MMDのVMDモーションをUnity上で再生するとこができました。
![スクリーンショット 2014-05-08 13.54.46.png](https://qiita-image-store.s3.amazonaws.com/0/25895/05af86ba-cbf0-abc9-e76b-7f984a7e5eb6.png)

Unityのドキュメントとか読んでいないので詳細は不明ですが、きもはFBXのモデルオブジェクトデータにひも付けがあると言う事っぽいです。

[Append & Unity-Chan](https://www.youtube.com/watch?v=6pHcAik1Fcc&list=UU1FHJeX9q7y7IM59GKw0ADQ) with Wave Dance
[Append & Unity Mecanim Anime](https://www.youtube.com/watch?v=FdtpzWrdE0Q&list=UU1FHJeX9q7y7IM59GKw0ADQ)

#はじめに
MMD用のモーションデータをダウンロードして使用する場合、作者の許可が必要なものがあります。
そのようなデータをご使用する場合、必ずその利用規約を読んで作業にあたってください。
自分も公開しているVMDデータを流用しましたが、確認のコメントを残しました。（ネチケットでせうか）

Unityでは[MMD4Mecanim](http://stereoarts.jp/)というMMD用のPMXデータ（モデルオブジェクトデータ）を読み込むプラグインAsset的なものが公開されています。（自分もそうだったのですが、後から始める方はmmd-for-unityと混同しがちです）

今回はモデルオブジェクトにAppend(有名なTda式)を使い、MMD4MecanimでモデルオブジェクトのFBXにひも付いたUnityのAnimation Clipを作成し、他のモデルオブジェクトのAnimatorへ設定する事により、MMDモデルオブジェクト（PMX）以外で作成されたモデルオブジェクトのUnityChanなどを歩かす事に成功しました（ただし顔のモーフはできない（そう当時はできませんでしたが今なら...）。

これだと、ゲームなどにモーションを追加するには、いろいろとお金が掛かるのですが歩きだけなら、ただでイケそうです。（ほんとか...)

#手順（実際にやってみたい人用）
+ FBXのAnimation Clipひも付け用に[MMD4Mecanim](http://stereoarts.jp)をインストールします。ダウンロードしたMMD4Mecanim.unitypackageをダブルクリックしてImporting package画面でImportボタンを押すと、そのUnityパッケージをProjectへ追加することができます。
![スクリーンショット 2014-05-08 17.04.34.png](https://qiita-image-store.s3.amazonaws.com/0/25895/c998342a-4795-48e6-213c-3868f4b89dfb.png)

+ MMD用の超有名なモデルオブジェクトデータ[Append Miku](http://bowlroll.net/up/dl4576)をダウンロードしインストールします。ダウンロードしたフォルダーごとUnityのProjectエリアへドラッグ&ドロップです。
![スクリーンショット 2014-05-08 17.15.26.png](https://qiita-image-store.s3.amazonaws.com/0/25895/0442268b-122e-1aec-8811-148d824955f2.png)

+ 今回は、いま話題沸騰中の[Unity-Chan](http://unity-chan.com/download/guideline.html)にMMD用のVMDモーションを適用し、あなたの思いのままに動いて頂きましょう。上記サイトよりダウンロードしたUnityChan.unitypackageをダブルクリックしてImporting package画面でImportボタンを押すと、そのUnityパッケージをProjectへ追加することができます。
![スクリーンショット 2014-05-08 22.47.46.png](https://qiita-image-store.s3.amazonaws.com/0/25895/f408d47d-c92b-dc57-5489-fa23e0996fa3.png)

+ VMDデータを自分のUnityフォルダーへコピーします。都合の良いVMDのモーションデータが無い人は[ミクびっくり](http://bowlroll.net/up/dl38101)をつかっください。

+ PMX用データをMMD4Mecanimを使ってVMDを伴ったFBX化をします。
+ PMX用ファイル内の.MMD4Mecanimをクリックし、InspectorエリアにVMDのモーションデータを設定します。下のProcessボタンを押すとFBX化します。
![スクリーンショット 2014-05-09 14.35.35.png](https://qiita-image-store.s3.amazonaws.com/0/25895/5a33bce7-5b3b-af7f-215f-96df5148b4f1.png)

+ PMXからFBXへ変換したプレファブのRigをGenericからHumanoidに変えてApplyボタンを押します。これをしないと他のモデルオブジェクトのRigが外れた状態になってしまうようです。
![スクリーンショット 2014-05-09 15.12.33.png](https://qiita-image-store.s3.amazonaws.com/0/25895/a34b084b-3466-00c8-6189-275546c3014f.png)

+ ProjectエリアのCreateからAnimator ControllerでunityのAnimatorステートマシン？を作成します。
![スクリーンショット 2014-05-09 14.39.17.png](https://qiita-image-store.s3.amazonaws.com/0/25895/48f6303e-dd28-5e3e-3b57-d3a49e5a7339.png)

+ 作成したAnimator Controllerをダブルクリックし右クリックで、空のステートマシンを作成しそこへFBXにひも付いたAnimation Clipを設定します。
![スクリーンショット 2014-05-09 14.42.46.png](https://qiita-image-store.s3.amazonaws.com/0/25895/9a7eb830-c677-aff6-2f24-567cf31e7288.png)
![スクリーンショット 2014-05-09 14.46.09.png](https://qiita-image-store.s3.amazonaws.com/0/25895/c685c762-4e96-7366-c057-4065c682bb07.png)

+ いよいよ仕上げです。Hierarchyエリアにいままで準備しておいたProjectの各素材を配置していきます。
+ プロジェクトエリア UnityChanディレクトリのunitychanプレファブと暗いのでDirectional light for UnityChanをHierarchyエリアにドラッグ＆ドロップします。
![スクリーンショット 2014-05-09 15.15.33.png](https://qiita-image-store.s3.amazonaws.com/0/25895/c8b047da-b80c-3ce1-95ae-8a1cb2f27fc2.png)

+ Hierarchyエリアへ配置したunitychanプレファブを選択しInspectorエリアのAnimatorのControllerへ作成したAnimator Controllerを設定します。
![スクリーンショット 2014-05-09 15.17.59.png](https://qiita-image-store.s3.amazonaws.com/0/25895/547d632d-cabc-9fab-c0f1-76a369ea8c32.png)

+ 再生ボタンを押すとUnityChanがVMDの動きをしてくれるはずです。残念ながら顔のモーフが反映されない現象は不明です。（ご存知のかた教えて）
![スクリーンショット 2014-05-09 15.57.22.png](https://qiita-image-store.s3.amazonaws.com/0/25895/bd6f1e76-2172-d138-b848-96046ab94b47.png)