UnityわかりづらいUnityのルートモーションの仕組みと設定方法を簡単に理解できるようにまとめました。座標移動が含まれるアニメーションをそのまま再生するしかし座標はスクリプトでコントロールしたい特定のモーションだけスクリプト制御で移動したい移動だけでなく回転も同じ考え方でOK移動値はスクリプトで制御したいけど回転値はモーションに任せたいUnity2018.3座標移動が含まれるアニメーションをそのまま再生する今、一番ルートのオブジェクトの座標を動かすモーションがあるとします。一回モーションを再生するとX軸方向に少し移動するようなモーションをループで再生するとします。結果、当然ですが位置はどんどん進んでいきます。座標はスクリプトでコントロールしたいしかし、ユーザが自由に移動できるようなゲームでは、モーションに応じて勝手に移動されては困ります。位置はユーザの入力に応じてスクリプトで制御したいところです。MotionをOFFにします。すると、モーションによる移動値が反映されなくなります。この状態でスクリプトからルートのオブジェクトのTransformをいじれば自由に移動させられます。特定のモーションだけスクリプト制御で移動したい前節の方法では、Animatorのプロパティを変更するので、そのキャラクターに適用されるすべてのモーションのルートモーションがOFFになってしまいます。これでは例えば、「歩きモーション時は移動値をスクリプトで制御したいものの吹き飛ぶモーションの時は移動量をモーションに任せたい」といった時に困ります。そこで、特定のモーションのルートモーションだけをOFFにする方法を考えます。MotionはONにしておきます。Transform>にします。これで、このモーションのルートモーションだけがOFFになります。移動だけでなく回転も同じ考え方でOKルートモーションの考え方は、移動値だけでなく回転値についても同様です。一回あたりY軸正方向に30度回転するモーションがあるとします。これをルートモーションを適用して再生すると回転しつづけることになります。前節までの設定方法でルートモーションをOFFにすれば、回転しなくなります。移動値はスクリプトで制御したいけど回転値はモーションに任せたい最後に、移動値だけはスクリプトで制御したいが、回転値はモーションに任せたい場合を考えます。回転値にだけルートモーションを適用します。MotionをONにしておきます。Nodeは<None>に設定します。<None>にすると、次のような設定項目が現れます。Rotationのチェックは外します。すると回転値だけルートモーションを適用することができます。»プロフィールUnityエンジニア。グラフィックスへの興味が強めです。Blur(渦巻ブラー)のポストエフェクトを実装する月別アーカイブはてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。