方法一:
这个方法比较简单,通过判断人物当前移动的方向会放回-1或者1来改变人物移动
Horizontal是判断水平方向,也就是左右移动
Vertical是判断竖直方向,也就是上下移动
这两个单词移动要拼写正确
这个方法的移动适用于2D游戏
方法二:
这个方法比较复杂一点,通过输入WASD来判断人物当前的移动
这里只有左右的移动,上下的移动也是同理可得
可以通过localscale来改变物体的朝向,就是可以改变人物面部的朝向。
new Vector3(-1, 1, 1),这里的-1不一定,也可能在按住D的时候是-1,这个可以自己调试,取决于人物初始的状态。
GetKey表示按住A键时,执行移动的命令。GetKeyUp表示抬起,GetKeyDown表示按下
这个方法也适用于2D游戏
方法三
这个方法适用于3D游戏
if (Input.GetKey(KeyCode.W))//控制人物的移动
{
transform.Translate(Vector3.forward * movespeed * Time.deltaTime);
}
if (Input.GetKey(KeyCode.S))
{
transform.Translate(Vector3.back * movespeed * Time.deltaTime);
}
if (Input.GetKey(KeyCode.A) )
{
transform.Rotate(-1 * Vector3.up * rotatespeed * Time.deltaTime);
}
if (Input.GetKey(KeyCode.D))
{
transform.Rotate(Vector3.up * rotatespeed * Time.deltaTime);
}
WS控制人物前后移动,AD控制人物旋转。
在控制人物移动时,可以设置一个速度,通过控制速度的大小,来改变人物的移动。



