ウェイトのついたモデルをMayaでブレンドシェイプ設定をしてUnityへ出力する方法
Maya
- 準備
- 複製モデルをフェースや頂点でモデルを変形したい形に調整
- ウェイトのついたモデル作成 01
- ウェイトのついてないモデル(複製) 02
- blendshape設定
- この時点で複製モデルは削除して大丈夫
- 履歴を消さなければblendshapeの設定は残ります
- Window アニメーションエディター→ShapeEditorを開く
- ウェイトのモデル01を選択
- エディター「ブレンドシェイプの作成」を押す
- BrendShapeDeformer(BrendShape1)を作成する
- ウェイトのついていないモデル02を選択(複数選択可能)
- エディターのBrendShapeDeformer(BrendShape1)の上で右クリック
- 選択項目をターゲットとして追加
- BlendShapeDeformerの下にskinModelShapeが登録される
- 複数のモデルを選択して登録するとskinModelShapeが複数登録される
- skinModelShapeに0~1を入力すると元モデル→複製モデルの形状に変化
- FBX出力
- アニメーション
- アニメーション
- 変形したモデル
- 変形したモデル
- スキン
- ブレンドシェイプ
- blendshape設定されてるウェイトのモデル01を選択→「選択項目の書き出し」
- オプションで下記にチェックを入れて書き出し
Unity
- Unityへfbxをインポート
- ImportBlendShapes チェックON
- NaimationType Legacyなどに設定
- Model
- Rig
- BlendShapeの変形
- FBXをシーン内にインポートするとSkinnedMeshRendererになっている
- Mesh以下のskinModelのInspector内にBlendShapesの項目ができているので0~100の値で設定するとBlendShapeの変形ができます
- Unityのアニメーションでもキーが打てるようになるのでキー設定するとアニメーション変形させられます
- アニメーションコントローラーがモーションのアニメーションしか入らず、Readonlyになっている場合
- アニメーションコントローラーのLayersにBaseLayerに別レイヤーを作成し、そちらの方でBlendShapeのアニメーションを作成して同時再生すると良さそう