unity飞船控制系统 W向上翻滚 s向下翻滚 a向左转 D向右转 N加速 M减速 的代码
时间: 2024-03-16 18:43:38 浏览: 53
以下是 Unity 飞船控制系统的代码,可以通过 W、S、A、D 控制飞船的翻滚和旋转,N 加速,M 减速:
```csharp
public class SpaceshipController : MonoBehaviour
{
public float rollSpeed = 3.0f; // 翻滚速度
public float rotationSpeed = 3.0f; // 旋转速度
public float acceleration = 10.0f; // 加速度
public float deceleration = 10.0f; // 减速度
private float currentSpeed = 0.0f; // 当前速度
void Update()
{
// 处理翻滚
float roll = Input.GetAxis("Vertical") * rollSpeed;
transform.Rotate(roll, 0, 0);
// 处理旋转
float rotation = Input.GetAxis("Horizontal") * rotationSpeed;
transform.Rotate(0, rotation, 0);
// 处理加速和减速
if (Input.GetKey(KeyCode.N))
{
currentSpeed += acceleration * Time.deltaTime;
}
else if (Input.GetKey(KeyCode.M))
{
currentSpeed -= deceleration * Time.deltaTime;
}
// 限制速度范围
currentSpeed = Mathf.Clamp(currentSpeed, 0.0f, 100.0f);
// 移动飞船
transform.Translate(0, 0, currentSpeed * Time.deltaTime);
}
}
```
注意,在使用此代码前需要在 Unity 中添加一个空对象,并将此脚本挂载到对象上。此外,还需要在 Unity 中设置飞船的初始位置和旋转方向。
阅读全文