人物移动代码
public float moveSpeed = 50.0f;
//“moveSpeed”是定义的一个变量,用来表示游戏主角SpaceMarine移动的速度。默认值是50
Vector3 pos = transform.position;
//获取当前位置
pos.x += moveSpeed * Input.GetAxis(“Horizontal”) * Time.deltaTime;
//当开发者在Unity的空间中移动物体的时候,X轴代表左右,Z轴代表前后,Y轴代表上下。
“Input.GetAxis(“Horizontal”)”指从输入管理器(Input Manager)的Horizontal属性中来获取一个值,这个值是“1”或者“-1”,1代表正方向键被按下,-1代表负方向按键被按下。
pos.z += moveSpeed * Input.GetAxis(“Vertical”) * Time.deltaTime;
//无论返回值是什么,它都会与moveSpeed相乘,并添加到GameObject的当前X的位置
“Time.deltaTime”该值表示 “Update()”方法自上一次被调用到这一次被调用经历了多长时间
transform.position = pos;
//将更新后的位置赋值给SpaceMarine的Transform组件的position属性。
代码如下:
using System;
public class Class1
{
public float moveSpeed = 50.0f; public Class1() { Vector3 pos = transform.position; pos.x += moveSpeed * Input.GetAxis("Horizontal") * Time.deltaTime; pos.z += moveSpeed * Input.GetAxis("Vertical") * Time.deltaTime; transform.position = pos; } }