unity 拖动查看物体旋转
时间: 2025-04-07 18:09:39 浏览: 58
在 Unity 中,通过拖动鼠标让物体旋转是一种常见的交互效果。这种功能可以用于 3D 场景浏览、模型展示等场景。以下是实现这一功能的基本步骤:
### 实现步骤
1. **获取用户输入**
使用 `Input.GetAxis("Mouse X")` 和 `Input.GetAxis("Mouse Y")` 来捕获鼠标的水平和垂直移动。
2. **计算旋转角度**
将鼠标的位移转换为旋转的角度值,并应用到目标物体上。
3. **设置旋转轴**
根据需要选择绕哪些轴旋转(如围绕本地坐标系的 x 轴和 y 轴)。
4. **更新物体的方向**
使用 `Transform.Rotate()` 或者直接修改 `transform.rotation` 属性来改变物体方向。
#### 示例代码
以下是一个简单的脚本示例,允许玩家按住鼠标右键并拖动以旋转物体:
```csharp
using UnityEngine;
public class RotateObject : MonoBehaviour
{
public float rotationSpeed = 5f; // 控制旋转速度
private void Update()
{
if (Input.GetMouseButton(1)) // 检测是否按下鼠标右键
{
float mouseX = Input.GetAxis("Mouse X"); // 获取鼠标X轴偏移量
float mouseY = -Input.GetAxis("Mouse Y"); // 垂直翻转Y轴偏移量
transform.Rotate(Vector3.up, mouseX * rotationSpeed); // 绕y轴旋转
transform.Rotate(Vector3.right, mouseY * rotationSpeed); // 绕x轴旋转
}
}
}
```
将此脚本附加到您希望控制的 GameObject 上即可生效。
---
阅读全文
相关推荐

















