[Unity]MMD4MFace - MMD4Mecanimの表情制御
MMD モデルを Unity で利用できる、Stereoarts さんの MMD4Mecanim での表情制御をすこし便利にするスクリプトです。
GitHub : udasan/unity-mmd4mface (GitHub なにそれという方は右下の Download ZIP をどうぞ)
表情モーフを複数まとめたものを一つの表情として管理、制御できます。
使い方は、だいたい以下の画像で伝わるかと思いますが、
モデルかモデルの親に MMD4MFaceController と MMD4MFace (1 つにつき表情 1 つ分) をアタッチして、表情の名前 (faceName) とモーフの情報を入力するだけです。
あとは SetFace(faceName) で表情を変更できます。
また、各 MMD4MFace を無効にするとその表情を無効にできます。
その他、MMD4MFaceController には状態取得系のプロパティ / メソッドがいくつかあります。(詳しくはソース)
利点
注意点
もちろん非公式です。(MMD4Mecanim_Alpha_20140216 でいちおうの動作を確認)
Unity 4.3.3f1 現在、インスペクタでの日本語入力がおかしいようですが、以下の記事が参考になると思います。
Unity4.3のインスペクターで日本語入力する方法 | ケットシーウェア
更新があればこの記事に追記していく予定です。
2014/2/20 追記 : 注意点を追記
2014/2/20 更新 : まばたき用スクリプトを追加しました。MMD4MFaceBlink
GitHub : udasan/unity-mmd4mface (GitHub なにそれという方は右下の Download ZIP をどうぞ)
表情モーフを複数まとめたものを一つの表情として管理、制御できます。
使い方は、だいたい以下の画像で伝わるかと思いますが、
モデルかモデルの親に MMD4MFaceController と MMD4MFace (1 つにつき表情 1 つ分) をアタッチして、表情の名前 (faceName) とモーフの情報を入力するだけです。
あとは SetFace(faceName) で表情を変更できます。
また、各 MMD4MFace を無効にするとその表情を無効にできます。
その他、MMD4MFaceController には状態取得系のプロパティ / メソッドがいくつかあります。(詳しくはソース)
利点
- 複数の表情モーフをまとめられる
- 表情変更するときに、前の表情モーフのリセットを考えなくてよい
- モデルごとの表情モーフ名の違いを吸収できる
- スクリプトに日本語を書かなくて済む
注意点
- timescale の影響を受ける
もちろん非公式です。(MMD4Mecanim_Alpha_20140216 でいちおうの動作を確認)
Unity 4.3.3f1 現在、インスペクタでの日本語入力がおかしいようですが、以下の記事が参考になると思います。
Unity4.3のインスペクターで日本語入力する方法 | ケットシーウェア
更新があればこの記事に追記していく予定です。
2014/2/20 追記 : 注意点を追記
2014/2/20 更新 : まばたき用スクリプトを追加しました。MMD4MFaceBlink
コメント
コメントを投稿