我无法在统一中正确切换动画

时间:2015-03-03 09:10:21

标签: animation unity3d switching

我在UNITY 3d中制作跳跃动画和空闲动画。 这是代码:

使用UnityEngine; 使用System.Collections;

公共课JumpingD:MonoBehaviour {

public Animator anim;
public float JumpSpeed_;
private RigidBody _Character; //rigid body of the Character
public Vector3 JumpVector;

/*The thresh Hold level for the character to jump are
    1: Stay Idle
    25: Jump Up 
    */
void Start () 
{
    anim=GetComponent<Animator>();
    anim.SetFloat("JumpSpeed", 1)
}


void Update () 
{
    anim.SetFloat("JumpSpeed", 1)
   if(Input.GetKeyDown(KeyCode.J))
   {
       _Character.AddForce(JumpVector*Time.deltaTime);
       anim.SetFloat("JumpSpeed", 25)
   }
}

}

问题是即使按下J键后跳转动画也不会播放。 总是闲置动画播放 我希望在按下J键后播放跳跃动画,之后角色再次闲置。

1 个答案:

答案 0 :(得分:0)

在每个帧调用的update方法的第一行,你设置&#34; JumpSpeed&#34;这意味着玩家将停止按下J键的下一帧,它将立即下降到1,所以跳跃动画当然不会在&#34;之后播放#34;玩家按下了J键。