[Unity3D]⼈物⾓⾊跳跃(动画跳跃&刚体跳跃)⽅法⼀:
添加刚体,使⽤刚体位移实现跳跃
1public class HeroMove : MonoBehaviour {
2  //---跳起的⼒量
3  public float JumpGravity = 500f;
4  //---刚体
5  public Rigidbody rg; 
8  private void Start() {
9    //---查刚体组件
10
11    rg = this.GetComponent<Rigidbody>();
unity3d animation12  }
13
14 
15
16  private void Update(){
17
18    //---判断是否按下空格
19    if (Input.GetKeyDown(KeyCode.Space) ){
20
21    //---为刚体的Y赋值⼀个新的⾼度,这个⾼度为跳跃重⼒,向上的⼒
22    rg.velocity = new Vector3(rg.velocity.x, JumpGravity *
23            Time.deltaTime,rg.velocity.z);
24  }
25
26 }
View Code
⽅法⼆:
使⽤动画效果位移跳跃(缺点,不能控制⾼度)
1public class HeroMove : MonoBehaviour {
2
3//---动画组件应⽤
4private Animator animt;
5//---跳跃动画名,可以是⼀个或者多个[]
6public string JumpName;
7
8  private void Start() {
9    //---查动画组件赋值
10            animt = this.GetComponent<Animator>();
11
12  }
13
14 
15
16  private void Update(){
17
18    //---判断是否按下空格
19    if (Input.GetKeyDown(KeyCode.Space) ){
20//---播放动画跳跃
21                animt.SetBool("JumpName",true);
22   
23  }
24
25 }
View Code