Unity 3D中距中心(相机)距离/半径相同的对象

时间:2018-10-02 14:00:58

标签: c# unity3d

这是Unity 3D上的360 Video应用程序。 我想在相机周围放置多个对象(位置固定),但是我需要使这些对象与相机(中心)具有相同的距离(相同的半径)。我怎样才能做到这一点?在编辑器上或通过代码。

我一直通过用箭头工具拖动物体来手动移动相机周围的物体。但这是不准确的事情。 :)

对此有任何了解将对我有很大帮助!不只是我,还有在Unity中处理360视频的任何人。

谢谢大家!

1 个答案:

答案 0 :(得分:0)

要解决您的问题,一个简单的解决方案是将“ child_of_camera”子项添加到相机,然后将“ child_of_child”子项添加到“ child_of_camera”。

现在您已经完成了此操作,将“ child_of_child”移到您想要的距离。之后,将您想要的随机旋转应用于“ child_of_camera”。

将“ child_of_camera”复制到您想要在屏幕上显示的许多对象,然后将它们全部旋转到您喜欢的位置。

现在,当您在相机周围移动时,这些孩子将随相机一起走。

如果要确保相机的旋转不会影响对象,则有两种处理方法:

  1. 将相机和“ child_of_camera”(此名称现在会引起误解,应重命名)放置在一个空的GameObject下,并在X,Y,Z轴而不是相机上移动“ empty_GO”。

  1. 创建一个快速脚本以附加到“ child_of_camera”上,以便始终将“ child_of_camera”的世界空间旋转设置为Vector3.zero。

正如我在评论中所述,此解决方案很可能不是解决问题的最佳方法,但绝对是一个易于理解和实施的非常简单的解决方案。希望对您有所帮助。