Unity控制物体移动C#

unity按键是有预设的可以在编辑-项目设置-输入管理器里查看

Input.GetAxis()获取玩家输入

Input.GetAxis("Horizontal");获取横坐标输入

Input.GetAxis("Vertical");获取纵坐标输入

float horizontal = Input.GetAxis("Horizontal");

float vertical = Input.GetAxis("Vertical");
赋值给这两个变量来存储两个输入值
Rigidbody rb;
声明Rigidbody变量
rb=this.GetComponent<Rigidbody>();
获取当前游戏对象的Rigidbody值赋给rb
Vector3 force =new Vector3(horizontal, 0,vertical)
创建三维向量force初始值为
(horizontal ,0,vertical)

这三个值为xyz,x是左右,y是上下,z是前后,因为不能飞和遁地所以y为0
 force = force * speed;
根据速度调整力的大小,可以实现吃道具加速之类的效果
 rb.AddForce(force);
应用力到刚体使其按照物理规则移动
点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注