void Update () {
float horizontal_move = Input.GetAxis("Horizontal");
//Debug.Log (horizontal_move);
float vertical_move = Input.GetAxis("Vertical");
this.rigidbody.AddForce (new Vector3 (horizontal_move, 0, vertical_move) * 10);
}
这段代码有点没看懂,能不能具体解释一下
Roll a ball案例
float horizontal_move = Input.GetAxis("Horizontal");这里是得到左右方向键的按下,
按下左键 返回-1 按下右键返回1 这样通过左右键的按下控制左右移动
同理 float vertical_move = Input.GetAxis("Vertical"); 这里得到的是上下方向键的按下
上方向键返回1 下方向键返回-1
距离 当按下右方向键的时候 float horizontal_move = Input.GetAxis("Horizontal"); 这里返回1
当没有按下上下键的时候float vertical_move = Input.GetAxis("Vertical"); 这里返回0
this.rigidbody.AddForce (new Vector3 (horizontal_move, 0, vertical_move) * 10);
这里就相当于
this.rigidbody.AddForce (new Vector3 (1, 0, 0) * 10);
这样不就向着x正轴的方向移动了吗