複数のブレンドシェイプを組み合わせたプリセットを作成し、合成するスクリプトです。
例えば「笑顔」と「怒り顔」を合成して「笑顔まじりの怒り顔」を表現することができます。
ダイレクト・ブレンディング でも同じことができますが、なにかしらの事情で Animator Controller を使えないようなケースで有用です。
リポジトリ内には、Unityちゃん(© UTJ/UCL)の表情を制御するデモが含まれています。キーボードの1、2、3キーでそれぞれの表情へ変化し、同時押しでブレンドすることができます。
適当なオブジェクトに BlendShapeMixer.cs
をアタッチし、対象のモデルを MeshRoot
にアサインします
ヒエラルキー上の BlendShape を調整し、Capture
ボタンでシェイプを取り込む
スライダー、または数値を入力
*組み合わせでシェイプが崩れる場合は、プリセット側のウェイトを調整する
Clear Weight
ボタンでモデルにセットされた BlendShape のウェイトをすべて初期化
*プリセットにない BlendShape はリセットされません
- Capture
ヒエラルキー上の BlendShape をプリセットとして取り込み - Apply
プリセットをヒエラルキー上の BlendShape へ反映 - Duplicate
プリセットの複製を作成 - Remove
プリセットを削除
- ドロップダウンリスト
操作対象の BlendShape を変更 - 数値フィールド BlendShape のウェイト値を調整