見出し画像

Modular Avatarでアバターの挙動を統一する

Modular AvatarでアクションレイヤーやFXレイヤーを異なるアバターでまとめて使い回す方法について

prefabをUnityPackage化する


・2種類のアバター(ex:ゾメちゃん、ひつくちゃん)で、プロジェクトを跨いでもまったく同じ挙動(表情・ジェスチャー・メニュー)をする
・レイヤー際処理(アクションレイヤーとFXレイヤーで同じ変数を共有して動かす仕組み)を保守管理しやすくなる
・Animator Override Controllerを介してモーションをセットするのでFXレイヤーを編集するよりも楽
・Modular Avatarを使って設定するので大幅に時間短縮できる

などのメリットがある

構造

prefabについて

Base Actionレイヤー


Gesture FXレイヤー


このようにコンポーネントをつける


prefabの構造
下層オブジェクトにはメニューのインストーラをつける

構造
Playable Layers  -Animator MergerとParameters
└メニュー追加 表情   -FXから 表情変更 Menu
└メニュー追加 ポーズ  -LocomotionとActionから Menu
└メニュー追加 固有  -固有FXから Menu

知見:Menu Installerは特定条件下で名前が制約される(つけてるオブジェクトの名前と同一になる)ので個別に空オブジェクトをつくって管理した方がいい

ジェスチャーレイヤーについて

Animator Override Controllerで登録している
ジェスチャーレイヤーは左右区別なし切り替え2セット方式

オーバーライド方式について詳しくはこちら

(VR記事まとめにとりあげられた…✌)

基本FX(表情関係)レイヤーについて


抽象モーションのオーバーライドをおこなっている

アバターに合った表情関係のモーションを登録する

アバターのメニューについて


Avatar menu
というオブジェクトをアバターのMA > Extract menuから作成しておく
表情(8種類)などはメニュートップに入れて、ジェスチャーの切り替えなどトグル1個のものは1個下の層を用意してそこに入れる(指定する)。メニュー超過でMore…となる機能はなるべく出現させない


Avatar Descriptorについて

統合するのでNONEしか入ってない

NONEは空アニメーターコントローラー、NONE Gestureはマスクつきの空
メニューはMA > Extract menuを実行した時点でPlaceholderになるはず
パラメーターも空ファイルになる

Modular Avatarを使いこなせば、このように4つのレイヤーをまとめて管理できるので、レイヤーを跨いだ表情+ポーズの処理がやりやすくなる

レイヤーを跨いだ処理の例:

ジャンプ表情=ロコモーションレイヤー+FXの複合処理

ほかのギミックは、これまたModular Avatarでprefab化して統合していけばOK



以上

この記事が気に入ったらサポートをしてみませんか?