[英]How do I make the player move towards the cursor Unity3D
我有这个 3D 游戏我正在开发
在这个游戏中我是一卷卫生纸
如果我按空格键,我会被吸引到 cursor
我开始使用光线投射来做到这一点,但这并没有成功,根本
那么,如何让卫生纸跳向 cursor? (我如何获得 cursor 所在位置的方向)
因此,据我了解,您希望您的游戏 object 在 3D 空间中移动到您的 cursor 的方向,这是在 2D 空间中。 您可以尝试获取游戏对象的世界位置并使用Camera.WolrdToScreenPoint() 。 这为您提供了 Vector3,其中 x 和 y 是屏幕坐标,z 是相机世界 z 坐标。 然后你可以用 Input.mousePosition 得到你的 cursor position 。 现在你有两个点可以用来计算方向。 (您决定是否要使用相机 z position 或将其设置为零。)
Vector3 payerScreenPos = cam.WorldToScreenPoint(player.transform.position);
Vector3 direction = (playerScreenPos - Input.mousePosition).normalized;
您需要参考当前相机(cam)和播放器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.