unity中鼠标点击物体 物体随着鼠标移动
最佳答案
在Unity中,可以使用脚本来控制物体随着鼠标移动。以下是一个简单的示例脚本,可以实现这个功能:
```csharp
using UnityEngine;
using System.Collections;
public class鼠标跟踪 : MonoBehaviour
{
public float鼠标灵敏度 = 1f;
public GameObject鼠标传感器;
private float leftMousePosition;
private float rightMousePosition;
private void Update()
{
float x = leftMousePosition - 鼠标传感器.position.x;
float y = leftMousePosition - 鼠标传感器.position.y;
if (Input.GetMouseButtonDown(0))
{
鼠标传感器.transform.position = new Vector3(x, y, 0);
}
if (Input.GetMousePosition(0) >= 鼠标传感器.transform.position.x && Input.GetMousePosition(0) <= 鼠标传感器.transform.position.z)
{
鼠标传感器.transform.position = new Vector3(鼠标传感器.transform.position.x, 鼠标传感器.transform.position.y, 0);
}
if (Input.GetMouseButtonDown(1))
{
鼠标传感器.transform.position = new Vector3(鼠标传感器.transform.position.x, 鼠标传感器.transform.position.y + 50, 0);
}
if (Input.GetMouseButtonDown(2))
{
鼠标传感器.transform.position = new Vector3(鼠标传感器.transform.position.x, 鼠标传感器.transform.position.y - 50, 0);
}
leftMousePosition = Input.GetMousePosition(0);
rightMousePosition = Input.GetMousePosition(1);
}
}
```
这个脚本使用两个变量来保存当前鼠标位置和鼠标传感器的位置。`鼠标灵敏度`变量控制鼠标灵敏度,它表示鼠标移动的精度。`GameObject鼠标传感器`变量表示一个可以控制鼠标传感器的GameObject。
在`Update`函数中,脚本检查鼠标是否按下了第1、2个按钮,并使用这些按钮来移动鼠标传感器的位置。如果鼠标传感器的位置在x、y轴上,且鼠标传感器的位置在z轴的正半轴范围内,脚本将移动鼠标传感器的位置。
您可以将这个脚本放在一个具有鼠标传感器的GameObject上,并使用鼠标来跟踪物体。例如,您可以创建一个Cube游戏对象,并在其上添加这个脚本。在运行时,您可以通过拖动鼠标来调整灵敏度。