使用【C#】写【unity角色移动代码】的代码
时间: 2024-10-21 17:02:04 浏览: 24
在Unity中使用C#编写角色移动的代码通常涉及创建`CharacterController`组件,并通过脚本来控制其位置和速度。以下是一个简单的例子:
```csharp
using UnityEngine;
public class PlayerMovement : MonoBehaviour
{
public float speed = 5f; // 角色移动速度
private CharacterController cc; // 角色控制器
void Start()
{
cc = GetComponent<CharacterController>(); // 获取角色控制器
}
void Update()
{
// 接收输入并转换到世界坐标系
Vector3 direction = new Vector3(Input.GetAxis("Horizontal"), 0f, Input.GetAxis("Vertical"));
// 如果有按下移动按钮
if (Input.GetKey(KeyCode.W))
direction += Vector3.forward * speed;
else if (Input.GetKey(KeyCode.S))
direction -= Vector3.forward * speed;
if (Input.GetKey(KeyCode.A))
direction += Vector3.left * speed;
else if (Input.GetKey(KeyCode.D))
direction -= Vector3.right * speed;
// 使用角色控制器移动
cc.SimpleMove(direction);
}
}
```
在这个脚本中,我们首先检查用户是否按下了W、S、A、D键来改变方向。然后,我们将这些输入转换成`direction`向量,并应用预设的速度值。`cc.SimpleMove`函数会根据这个向量来让角色移动。
阅读全文