gpt4 book ai didi

c# - 如何在随机无碰撞位置实例化 GameObject?

转载 作者:行者123 更新时间:2023-11-30 23:10:46 26 4
gpt4 key购买 nike

我正在使用 Unity 制作游戏。我在随机位置实例化 (circle) GameObjects 并且效果很好。我想要做的是仅在不会与其他 GameObjects 重叠的位置实例化。我在互联网上找到的解决方案都没有解决我的问题,那么我该怎么办?这可能吗?

最佳答案

好的。为了检测您的圆圈是否有空间,您需要使用对撞机或数学/体积方程式。但无论采用哪种方式,您都需要引用一个位置(变换 x、y、z)来对区域进行采样,并确定您的圆圈是否可以在那里生成。

您可以执行以下操作之一:

  1. 像往常一样创建对象,但如果发生碰撞,请立即销毁该对象。然后产生另一个。
  2. 将生成器游戏对象移动到执行与上述相同检查的位置,但只有在确定圆圈有空间时才会生成它。 (编辑) 然后禁用或移动生成器,您将只需要这些对象之一来完成所有生成。
  3. 让从一组预定义位置(向量 3 或场景中的现有游戏对象)中选择生成圆圈的类,然后执行上述检查之一。

这取决于您的需求以及重叠的可能性。

希望对您有所帮助。

关于c# - 如何在随机无碰撞位置实例化 GameObject?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45166667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com