【发布时间】:2018-09-07 08:03:46
【问题描述】:
所以我正在尝试使用精灵创建一个平台级别,它们中的每一个都是沿着屏幕在相同的 y 位置随机创建的。虽然,我遇到的问题是,当它们随机创建时,它们会不断重叠,我似乎无法找到一种方法来创建它们,以免它们重叠。
我的程序当前在随机 x 位置创建一个精灵,然后 for 循环创建指定数量的平台。我的问题是,如果我想阻止它们重叠,我是否需要在随机 x 规范期间或在创建多个精灵的 for 循环期间尝试进行约束。
c 新手,所以真的坚持这个逻辑,任何帮助将不胜感激。
【问题讨论】:
-
您是否有 AABB(轴对齐边界框)碰撞检测可用于检测重叠?
-
你不能只添加一些逻辑来确保下一个随机 X 位置大于前一个 X 位置 + 平台宽度 / 2 吗?
-
还没有,我对 c 比较陌生,所以我检测碰撞的唯一想法是定义精灵 1 的 x 位置并说精灵 2 x 位置!= 精灵 1 的 x
-
如何将你的 X 轴分成 N 个单独的区域,并在每个区域的随机位置放置一个精灵?