Trivial
IEnumerator OnMouseDown()
{
Debug.Log(2121212);
Vector3 targetScreenPos = Camera.main.WorldToScreenPoint(moveBreakDrill.transform.position);//三维物体坐标转屏幕坐标
将鼠标屏幕坐标转为三维坐标,再计算物体位置与鼠标之间的距离
var offset = moveBreakDrill.transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, targetScreenPos.z));
while (Input.GetMouseButton(0))
{
Debug.Log("jinruyidong");
将鼠标位置二维坐标转为三维坐标
Vector3 mousePos = new Vector3(Input.mousePosition.x, Input.mousePosition.y, targetScreenPos.z);
将鼠标转换的三维坐标再转换成世界坐标 + 物体与鼠标位置的偏移量
var targetPos = Camera.main.ScreenToWorldPoint(mousePos) + offset;
moveBreakDrill.transform.position = targetPos;
yield return new WaitForFixedUpdate();//循环执行
}
}
MonoBehaviour<Behaviour<Component<Object

浙公网安备 33010602011771号