方法一:
添加剛體,使用剛體位移實現跳躍

1 public class HeroMove : MonoBehaviour { 2 //---跳起的力量 3 public float JumpGravity = 500f; 4 //---剛體 5 public Rigidbody rg; 6 7 8 private void Start() { 9 //---查找剛體組件 10 11 rg = this.GetComponent<Rigidbody>(); 12 } 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 }
方法二:
使用動畫效果位移跳躍(缺點,不能控制高度)

1 public class HeroMove : MonoBehaviour { 2 3 //---動畫組件應用 4 private Animator animt; 5 //---跳躍動畫名,可以是一個或者多個[] 6 public 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 }