Unity 2D 帮助 - 小行星的随机生成而不让它们在相机视图中生成

Unity 2D Help - Random Spawining Of Asteroids Without Having Them Spawn In Camera View

我目前正在制作一个鸟瞰图的“自由漫游”2D space 游戏。

我正在尝试在场景周围随机生成小行星,以便它们可以用来与船只发生碰撞,尽管我不希望这些小行星在相机视图中生成,因为我不希望它看起来就像一颗小行星凭空出现。

任何人都可以向我解释如何实现这一目标吗?

我认为我没有必要展示我的代码,因为我真正拥有的只是一个简单的移动脚本和一个摄像机跟随脚本。

提前致谢!

您可以使用

获取相机的位置
Camera.main.transform.position;

在检查器中,您可以设置相机的大小,它是相机覆盖的区域高度的一半(以世界单位表示)。您唯一需要的剩余信息是纵横比,以便您可以计算相机覆盖区域的宽度。

然后您可以在任意点 (x, y) 实例化小行星,其中 y > (Camera.main.transform.position.y + sizeOfYourCamera) and/or x > (Camera.main.transform.position.x + sizeOfYourCamera * aspectRatio)。

这只涵盖相机上方和右侧的点,但您明白了。