我正在尝试在Unity中创建可拖动的游戏对象,目前我已经实现了跟随鼠标的功能。
但这并不是我想要的,我希望它能够按照鼠标方向移动0.375f,而不是直接跟随鼠标位置移动。
我无法想象它该如何实现 - 如果有任何帮助,将不胜感激!以下是我目前的代码:
void OnMouseDown()
{
screenPoint = Camera.main.WorldToScreenPoint(transform.parent.position);
offset = transform.parent.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z));
}
void OnMouseDrag()
{
Vector3 curScreenPt = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
Vector3 curPos = Camera.main.ScreenToWorldPoint(curScreenPt) + offset;
transform.parent.position = new Vector3(curPos.x, curPos.y);
}