【Unity VRChat】新しい表情をつくるアプローチ【アバター】
アバターの新しい表情を作るアプローチについて
手順
1.BlendTreeで2つの表情を半分ずつ足す
以上。
これはゾメちゃんの例ですが、怒りと悲しみを等分で足して呆れを表現してみました。これで理解できたのならこの記事はここで終わりですが、補足していきます。
BlendTreeの作成
BlendTreeは新規作成ができないため、既存のBlendTreeをコピーして「空のBlendTree」をasset上にひとつ作成します。
既存BlendTreeの場所
(プロジェクト名)\Packages\com.vrchat.avatars\Samples\AV3 Demo Assets\Animation\BlendTrees 以下
アバターのSDKサンプルとしてあり、コピーしてから開くとこうなっています。
すべてのチェックを外し、すべてのmotionを-から削除し、Blend Typeを1Dに戻します。
Motionを2項目にして、片方のスレッショルドを0、もう片方を1に設定します。
UNITYの説明にも書いてある通り、Parameterが0のときAの表情、1のときBの表情をとるようになり、中間の0.5ではA+Bの混ぜ合わさった表情(モーション)になります。
画像のように怒りと悲しみのスレッショルドをそれぞれ0と2にすると、Parameterが1でその中間となった表情がつくれます。FXレイヤーの表情を出しているところへこのブレンドツリーを突っ込みます。
これで何をやったかというと、AとBの中間アニメーションのファイルをつくってセットしたのと同じことになります。
最後に、parameterの1は変数なのでFXレイヤーに変数(という名の定数)として登録する必要が有ることに注意。
もちろんここの数字を変えれば混ざり方をいろいろと柔軟に変えることも可能。変数によって動的に動かすこともできる。アニメーションファイルを作る手間を節約するテクニックとして是非。