【发布时间】:2018-04-17 13:46:12
【问题描述】:
我尝试制作一个可拖动的抽屉,我使用了以下代码:
void OnMouseDrag() {
Vector3 curScreenPoint = new Vector3(Input.mousePosition.x, Input.mousePosition.y, screenPoint.z);
Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenPoint) + offset;
//Debug.Log(curPosition[0]);
curPosition.y = gameObject.transform.position.y;
curPosition.z = gameObject.transform.position.z;
//curPosition.x = Mathf.Clamp(gameObject.transform.position.x,-3.0F,3.0F);
transform.position = curPosition;
}
如何限制 x 的拖动范围?因为我不想有这样的东西:
我尝试使用 Mathf.Clamp,但效果不佳。
谢谢!对不起我的英语。
【问题讨论】:
-
您可能仍需要对其进行调整,但似乎
Mathf.Clamp()无法正常工作,因为您将curPosition.x夹在worldPosition.x - 3.f和worldPosition.x + 3.f之间。试试Mathf.Clamp(gameObject.transform.position.x, gameObject.transform.position.x - 3.0F, gameObject.transform.position.x + 3.0F);:-)