我正在尝试在要构建的Unity游戏中使用一组球形粒子来模拟压力。关于此问题的几个注意事项:
- 目标是用无摩擦的小球填充不断变化的2d空间/空隙。游戏正在尝试模拟将更多物体推入该空间的压力不断增加。
- 关卡本身一直在从左向右滚动,这意味着如果用户未更改该空间的尺寸,它将自动变小(该空间的最左侧部分将不断在屏幕外滚动)。
我想知道我可以采取什么方法来解决这些问题...
- 知道何时检测何时有空间要填充,然后将球体添加到该空间。
- 缩小时,从空间中移除球体。
- 模拟球体上压力的策略,以便在创建更多空间时它们“向外爆炸”。
我正在考虑的当前方法是使用不断移动的墙,该墙不在屏幕上并随屏幕移动,如下图所示:
。
这个移动的壁会将球体推入并捕获到空间中。至于添加新球体,我将要么(1)在检测到自由空间时复制球体,要么(2)在空间的左侧(壁所在的位置)生成它们-将其余球体推向填补空间。我预见了想法1的问题,因为这可能不会真正产生/模拟压力。想法2似乎更有希望,但是提出了一个问题,即如何为这些新的球形粒子提供生成位置(以及在没有空间的情况下生成它们的后果)。
非常感谢您的智慧!