ue/book/gasp/11_run.md
2025-03-19 10:11:30 +09:00

2.3 KiB

アニメーションを変更する

今回はダッシュ(sprint)で一定のスピード(speed)に達するとkawaii_runと名付けたアラレちゃん走りに切り替わるようにします。

  1. ABP_SandboxCharacterのAnimGraphを開きます。cached poseを作って処理を分割します。
  2. cached poseを呼び出してLayered blend per boneのbaseにつなぎます。重要なのはLayered blendの詳細でspine_03のボーンを入れること。
  3. blendにアニメシーケンスをつなぎます。私はunity -> .vrma -> vrm4uで作成したものを使いました。
  4. blend weightsの値をconfigから持ってきます。これでCBP_SandboxCharacterから制御できます。ダッシュが一定速度に達すれば1、それ以外は0にします。

アニメシーケンスを作る

これをunityを使って変換して使いました。

リターゲットによる調整

kawaii_runは走っているときに両足を中央に持っていくのが正しいですが、このままでは足が開いてしまいます。

これを調整するにはリターゲットのposeを変更します。使用しているRTG_UEFN_$modelを開いて、Running RetargetからEditing Retarget Poseにします。両足を回転さればokです。一方はプラス、もう一方はマイナスの値です。

  • left: 0.0, -2.0, 20.0
  • right: 0.0, 2.0, -20.0

GASPでアニメーションを変更するには

CHT_AnimationsForStateMachineでそれぞれの項目のanimを変更すればいいのだろうかと思いましたが、走るanimに関しては、複雑すぎる上に全方位のものを用意する必要があります。

したがって、ABP_SandboxCharacterのblendを活用しながら適用しました。