之前有记录过3D场景下物体的移动,是利用Input.GetAxis方法进行获取键盘的输入,然后在移动方向上施加一个力向量rigidbody rd=AddForce(new Vector3(x,0,y)*speed);进行前后左右的移动,今天在2D的学习中,发现了与3D游戏中物体运动不同的一个方法。
首先还是需要利用Input.GetAxis获取键盘输入的信息
public float speed; //移动速度
public float angularSpeed; //物体旋转速度
private Rigidbody rigidbody;
void Update(){
float v= input.GetAxis("Vertical"); //竖直方向的移动
rigidbody.Velocity=transform.foward*speed*v;
float h=input.GetAxis("Horizontal");
rigidbody.angularVelocity=transform.up*angularSpeed*h;
}
首先利用方法获取键盘输入信息,然后利用rigidbody组件中的velocity属性和angularVelocity属性进行物体的前后移动和选装,这个方法适合车的移动,是否可以用于其他的场景,现在还没有过多的研究,总之,对于一个动作的实现方法,我们会的越多,就越好~