MRが楽しい

MRやVRについて学習したことを書き残す

mmd4mecanimで変換したモデルにhumanoidリグを適用する

本日は MMD の技術調査枠です。
以前、mmd4mecanimでUnityにMMDモデルを取り込む方法について調査しました。
bluebirdofoz.hatenablog.com

MMDforUnityの変換で実施したhumanoidリグの反映をこちらの変換モデルでも試してみます。
bluebirdofoz.hatenablog.com

テスト用プロジェクトとして以下の記事で作成したプロジェクトを利用します。
bluebirdofoz.hatenablog.com

折角なので、講座を見ながら Unity 2017.2 で作り直しました。
f:id:bluebirdofoz:20180116021011j:plain
ここからユニティちゃんのキャラクタをMMDモデルに差し替えます。

mmd4mecanimの記事を参考にMMDモデルをUnityに取り込みます。
bluebirdofoz.hatenablog.com
bluebirdofoz.hatenablog.com

サンプルモデルに今流行りのバーチャルユーチューバー、キズナアイのモデルを利用しました。
・download-page - Kizuna AI Official Website
 http://kizunaai.com/download-page/

今回はUnityちゃんのモーションを利用するので、mmd4mecanimでのモーション取り込みは不要です。
f:id:bluebirdofoz:20180116021124j:plain

モデルを取り込みました。Unityちゃんとモーションを共有するため、humanoidリグを設定します。
fbx ファイルを選択して Inspector から Rig タグを開き、Animation Type を「humanoid」に変更します。
変更したら Apply をクリックして変更を反映します。
f:id:bluebirdofoz:20180116021132j:plain

変更が完了したら、各ボーンの設定が正しく行われているかを確認するため、Configure をクリックします。
f:id:bluebirdofoz:20180116021141j:plain

以下のような関連付けになっていれば問題なさそうです。
mmd4mecanimで取り込んだモデルであれば名前は一致するはずです。
f:id:bluebirdofoz:20180116021149j:plain
(数字部分はモデルによって異なります)

fbx モデルをシーンに取り込み、Unityちゃんと同じセットアップを行います。
・Transform の設定
・Controller の設定
・Rigitbody のアタッチ
・CapsuleCollider のアタッチ
・UnityChanControlScriptWithRgidBody のアタッチ
f:id:bluebirdofoz:20180116021829j:plain
Unityちゃんは無効化しておきます。

ゲームを起動して Enter キーを押下すると……。
f:id:bluebirdofoz:20180116021840j:plain
成功です。MMDキャラクタをUnityちゃんのモーションで動作させることができました。


ただし……。
以下の記事でも言及した通り、厳密にはMMDモデルとhumanoidモデルのボーン構造は腰部分の構造が異なります。
bluebirdofoz.hatenablog.com
このため、腰回りのモーションが正確に再現されないことがあります。