質問内容
Unityで攻撃が終わって腕や足が元の立ち絵の状態に戻った後、待機モーションに移行する際にモーションをモーションブレンドして繋ぎ目をなくして自然に移行する方法が知りたいです。
実現したいこと
モーションブレンドで 攻撃→待機 の流れをモーションブレンドしたい
知りたいこと
モーションブレンドで 攻撃→待機 の流れをモーションブレンドするにはどうやったらいいか知りたい
試したこと
下記のソースファイルでモーションブレンドのブレンド値の変化を実行画面で確認
提示画像のように待機から攻撃までは完成したのですが攻撃から待機に戻るにはどうしたらいいのでしょうか?アニメーション推移を含めどうしたらいいかわかりません
モーション取得したサイト
mixamo: https://www.mixamo.com/#/?page=1&query=magic&type=Motion%2CMotionPack
該当のソースコード
cs
1using System.Collections; 2using UnityEngine; 3 4namespace Assets.script.player 5{ 6 public class PlayerAnimation : MonoBehaviour 7 { 8 private PlayerCameraControl cameraControl; 9 private PlayerControl control; 10 private Animator animator; 11 12 13 private const float attackMotionSpeed = 1.0f; 14 [SerializeField, Range(0f, 1f)] private float attackMotion = 0; 15 16 private bool isAttack = false; 17 // Use this for initialization 18 void Start() 19 { 20 cameraControl = GetComponent<PlayerCameraControl>(); 21 control = GetComponent<PlayerControl>(); 22 animator = GetComponent<Animator>(); 23 } 24 25 // Update is called once per frame 26 void Update() 27 { 28 //animator.SetFloat("moveSensitivity", cameraControl.getForward().magnitude); 29 30 if(control.getButton_A() == true) 31 { 32 attackMotion = attackMotion - (attackMotionSpeed * Time.deltaTime); 33 Debug.Log(attackMotion); 34 35 //animator.SetFloat("moveSensitivity", attackMotion); 36 } 37 38 if(control.getButton_B() == true) 39 { 40 attackMotion = attackMotion + (attackMotionSpeed * Time.deltaTime); 41 Debug.Log(attackMotion); 42 43 //animator.SetFloat("moveSensitivity",attackMotion); 44 } 45 46 47 animator.SetFloat("moveSensitivity", attackMotion); 48 49 } 50 } 51}
回答1件
あなたの回答
tips
プレビュー