キャラクターの歩行アニメーションにルートモーションを適用しているのですが、
歩行アニメーションの最終フレームに到達すると、最初のフレームの位置にキャラクターが戻ってしまいます。
最終フレームに到達してもキャラクターの位置が戻らないようにする方法はないでしょうか?
(追記)
アニメーションシーケンスのEnableRootMotionはTrueに、 アニメーションBPのRootMotionModeも"Root Motion from Everything"にしており、 RootMotionによるCharacterの移動ができているのは確認しております。 (Meshがカプセルコリジョンから抜け出さずに移動できており、かつSpringArmで繋げたカメラも追従しています。また、AddMovementInputを使用せずに移動ができています) しかし、当該アニメーションシーケンスの最終フレームに到達すると、Characterが最初のフレームの位置(=移動を開始した位置)に戻ってしまいます。
例えばジャンプのようなループせずに1回の再生で済むアニメーションの場合は、最終フレームに到達し、ジャンプの到達点にCharacterが移動して終わりでよいのですが、 今回のような歩行のアニメーションの場合はループ再生させることが前提となるので、最終フレーム⇒開始フレームの間でもそのままCharacterを移動させ続けたいのです。
自分でも色々な情報をあたったつもりではいますが、できて当たり前なのかできなくて当然なのか、うまく情報を見つけ出せていない状況です。 何かごく簡単なことを見落としている可能性があります。 どうかご助力いただけると幸いです。
①歩行アニメーションのスタート位置
②歩行アニメーションの終了位置
この直後①の位置に戻ってしまう
1 Like
LunaNelis
(ネリスさんMain)
2
この方の説明がわかりやすかったので紹介しておきます。
LunaNelis
(ネリスさんMain)
3
アニメーションシーケンスの設定にEnableRootMotionというものがあります。
こちらをTrueにしてみてはいかがでしょうか?
ご丁寧にご説明いただきありがとうございます。
参考となるツイートのご共有もありがとうございます。
アニメーションシーケンスのEnableRootMotionはTrueに、
アニメーションBPのRootMotionModeも"Root Motion from Everything"にしており、
RootMotionによるCharacterの移動ができているのは確認しております。
(Meshがカプセルコリジョンから抜け出さずに移動できており、かつSpringArmで繋げたカメラも追従しています。また、AddMovementInputを使用せずに移動ができています)
しかし、当該アニメーションシーケンスの最終フレームに到達すると、Characterが最初のフレームの位置(=移動を開始した位置)に戻ってしまいます。
例えばジャンプのようなループせずに1回の再生で済むアニメーションの場合は、最終フレームに到達し、ジャンプの到達点にCharacterが移動して終わりでよいのですが、
今回のような歩行のアニメーションの場合はループ再生させることが前提となるので、最終フレーム⇒開始フレームの間でもそのままCharacterを移動させ続けたいのです。
自分でも色々な情報をあたったつもりではいますが、できて当たり前なのかできなくて当然なのか、うまく情報を見つけ出せていない状況です。
何かごく簡単なことを見落としている可能性があります。
どうかご助力いただけると幸いです。