C# 如何将游戏对象放置到鼠标位置
我想把游戏对象放在X,Y坐标系下我用鼠标按下的位置。Z应该总是一样的 我怎样才能做到这一点 我现在试过了C# 如何将游戏对象放置到鼠标位置,c#,unity3d,position,gameobject,C#,Unity3d,Position,Gameobject,我想把游戏对象放在X,Y坐标系下我用鼠标按下的位置。Z应该总是一样的 我怎样才能做到这一点 我现在试过了 Vector3 a = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0)); myGameObject.transform.position = Vector3.Lerp(myGameObject.transform.position, a, 0.01f);
Vector3 a = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0));
myGameObject.transform.position = Vector3.Lerp(myGameObject.transform.position, a, 0.01f);
但这不起作用。它只是在Z坐标中移动我的对象。将Z轴更改为0。您应该保持原始z坐标,如下所示:
Vector3 a = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0));
a.Set(a.x, a.y, myGameObject.transform.position.z);
myGameObject.transform.position = Vector3.Lerp(myGameObject.transform.position, a, 0.01f);