【发布时间】:2020-05-07 05:39:35
【问题描述】:
我正在开发一个单人游戏项目,其中玩家控制太空中的一艘船(第一人称)并射击在随机位置以随机速度生成的小行星。拍摄时,无论相机在哪里或朝向哪个方向,我都想将子弹物体直接放在相机前面 1.5 个单位。我试过这条线
Vector3 torpedoPos = CameraPosition + CameraDirection * 1.5f;
正如这两个帖子所建议的那样:Placing objects right in front of camera、Placing an object in front of the camera,但只要我的位置是其他任何 (0, 0, 0),无论我面向哪个方向,对象都会放置在同一位置。在我发布的代码行中,torpedoPos 是我想要生成子弹对象的位置,CameraPosition 是相机对象在 3d 空间中的当前位置,CameraDirection 是具有相机对象朝向的单位向量。
【问题讨论】: