我在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键后播放跳跃动画,之后角色再次闲置。
答案 0 :(得分:0)
在每个帧调用的update方法的第一行,你设置&#34; JumpSpeed&#34;这意味着玩家将停止按下J键的下一帧,它将立即下降到1,所以跳跃动画当然不会在&#34;之后播放#34;玩家按下了J键。