こんにちはっ🌟八ツ橋まろんです
Unityでキャラクターモーションを合成するのに使える自作スクリプト『Motion Fusion』の紹介です。
こんなときに使えます。
・体のモーションキャプチャと指のモーションキャプチャでトラッキングデバイスが違うのをUnity上でリアルタイム合成
配布はこちら(支援者限定)
利用規約はこちら
・配布しているunitypackageをインポートする
・Assets > _StudioMaron > Script > MotionFusionフォルダ内のMotion Fusionプレハブをヒエラルキーに置く
・Motion Fusionプレハブのインスペクターを適切に設定
Motion Fusionのインスペクター解説
・Target Animator: 合成モーションの出力先アバターを設定 (複数指定可)
・Memo: メモ用です。好きな文字列を入れられます。
・Avatar Mask: 体のどの部位を参照するかのマスクです。
・Animator: モーションを参照したいアバターを設定
実際に運用する場合、Avatar 1やAvatar 2は非表示にしてAvatar 3だけ見えるようにしたいですよね。以下のように設定することで、Avatar 1や2のアニメーションを維持した状態でAvatar 1, 2を非表示にできます。
・Avatar 1、Avatar 2のAnimatorは残し、Culling ModeをAlways Animateにする。
・メッシュを非アクティブにする
・ボーンを非アクティブにする。ただし、アバターの制御方法によっては、ボーンはアクティブにしておく必要があるかもしれません。
以上がMotion Fusionの使い方となります。
Avatar Maskを編集すれば体と指以外でも分割できます。
ただし、胴体と脚を分離するのだけはやめた方がいいかもしれません。
(Humanoidの自動的な重心計算によって足の接地ずれが大きくなる)
是非使ってみてください🌟