void Update()
{
if (Input.GetMouseButtonDown(0))
mousePoint = Input.mousePosition;
Vector3 wordPoint = Camera.main.ScreenToWorldPoint(mousePoint);
player.position = wordPoint;
}
上面代码就是进行了坐标转换 但是发现不起效果.
解决方法 给屏幕坐标z值进行赋值,不然是无法进行正常转换.并且转换后的屏幕坐标距离摄像机的距离就是你赋值的z值;
正确代码如下
void Update()
{
if (Input.GetMouseButtonDown(0))
mousePoint = Input.mousePosition;
mousePoint.z = 10;
Vector3 wordPoint = Camera.main.ScreenToWorldPoint(mousePoint);
player.position = wordPoint;
}
此时z值赋值为10,那么转换后的z坐标就会与摄像机距离为10.