unity2d主角移动代码
时间: 2024-10-21 08:03:58 浏览: 10
Unity键盘WASD实现物体移动
在Unity 2D中,创建主角(游戏对象)的移动通常涉及到使用脚本控制其位置变化。以下是一个简单的例子,展示了如何为一个名为`Player`的游戏对象创建基本的左右移动:
```csharp
using UnityEngine;
public class PlayerController : MonoBehaviour
{
// 假设我们有一个公开的"Speed"变量用于设置移动速度
public float speed = 5.0f;
// 输入管理,获取左右箭头键的按下和释放事件
private void Update()
{
// 如果左箭头键被按下
if (Input.GetKey(KeyCode.LeftArrow))
{
// 移动对象向左
transform.position += Vector3.left * speed * Time.deltaTime;
}
// 如果右箭头键被按下
if (Input.GetKey(KeyCode.RightArrow))
{
// 移动对象向右
transform.position += Vector3.right * speed * Time.deltaTime;
}
// 如果左箭头或右箭头键不再按住,则停止移动
if (!Input.GetKey(KeyCode.LeftArrow) && !Input.GetKey(KeyCode.RightArrow))
{
// 停止移动
GetComponent<Rigidbody2D>().velocity = Vector2.zero;
}
}
}
```
这个脚本绑定了到玩家游戏对象上,当用户按下左、右箭头键时,主角会按照指定的速度向相应方向移动。`Time.deltaTime`确保了移动是基于帧率进行的,而不是固定的值。
阅读全文