Unity 在 2d 中查看光标
Unity look at cursor in 2d
我正在 Unity 3D 中创建 2D 游戏,但我的玩家旋转有问题。
它应该旋转到光标,但是当我开始游戏时,它看着主摄像头。
我尝试了很多教程中的很多代码,但在大多数情况下,我的播放器只看向主摄像头的中心。
这是我的代码:
Vector3 mouse = Input.mousePosition;
Vector3 mouseWorld = Camera.main.ScreenToWorldPoint(new Vector3 (mouse.x, mouse.y, player.transform.position.y));
Vector3 forward = mouseWorld - player.transform.position;
player.transform.rotation = Quaternion.LookRotation (forward, Vector3.up);
玩家只是看着相机。我不是专家,但我认为输入存在一些问题,因为我过去尝试过的一些代码确实如此,玩家只是什么也没看
(我的英语不是最好的...请为我的错误道歉)
您可以使用:
Vector3 mouse = Input.mousePosition;
Vector3 mouseWorld = Camera.main.ScreenToWorldPoint(new Vector3 (mouse.x, mouse.y,transform.position.z));
transform.right = mouseWorld -transform.position;
我正在 Unity 3D 中创建 2D 游戏,但我的玩家旋转有问题。
它应该旋转到光标,但是当我开始游戏时,它看着主摄像头。
我尝试了很多教程中的很多代码,但在大多数情况下,我的播放器只看向主摄像头的中心。
这是我的代码:
Vector3 mouse = Input.mousePosition;
Vector3 mouseWorld = Camera.main.ScreenToWorldPoint(new Vector3 (mouse.x, mouse.y, player.transform.position.y));
Vector3 forward = mouseWorld - player.transform.position;
player.transform.rotation = Quaternion.LookRotation (forward, Vector3.up);
玩家只是看着相机。我不是专家,但我认为输入存在一些问题,因为我过去尝试过的一些代码确实如此,玩家只是什么也没看
(我的英语不是最好的...请为我的错误道歉)
您可以使用:
Vector3 mouse = Input.mousePosition;
Vector3 mouseWorld = Camera.main.ScreenToWorldPoint(new Vector3 (mouse.x, mouse.y,transform.position.z));
transform.right = mouseWorld -transform.position;