繁体   English   中英

如何让玩家走向 cursor Unity3D

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM