Unity判断鼠标是点击还是拖动代码实现
时间: 2023-12-06 22:05:48 浏览: 135
鼠标拖动的实现
以下是一个简单的示例代码,用于在Unity中判断鼠标是点击还是拖动:
```
public class MouseInput : MonoBehaviour
{
private bool isDragging = false;
private Vector3 startPosition;
void Update()
{
if (Input.GetMouseButtonDown(0))
{
isDragging = false;
startPosition = Input.mousePosition;
}
else if (Input.GetMouseButton(0))
{
if (!isDragging && Vector3.Distance(Input.mousePosition, startPosition) > 10)
{
isDragging = true;
Debug.Log("Drag started");
}
}
else if (Input.GetMouseButtonUp(0))
{
if (isDragging)
{
isDragging = false;
Debug.Log("Drag ended");
}
else
{
Debug.Log("Click");
}
}
}
}
```
这个脚本会在鼠标按下时记录鼠标的起始位置,然后在鼠标移动时计算当前位置和起始位置之间的距离,如果距离超过10像素,就认为鼠标正在拖动。当鼠标释放时,如果鼠标正在拖动,就输出“Drag ended”,否则输出“Click”。
阅读全文