最近,我已将游戏引擎从转向行为切换为具有适当时间冲突解决方案的基于冲动的运动。这解决了很多问题(不再需要隧道化,是的),并使模拟更加稳定。但是,稳定性带来了新问题。
这三个球开始在图像底部附近的旅程,他们的目标是粉红球停下来的地方。在途中,红色和绿色的球卡在了墙的阻塞点。
在此之前,我可以依靠浮点错误和操纵行为的一般不稳定来使绿色和红色的球相互碰撞,直到它们成功通过了阻塞点。现在具有适当的碰撞分辨率,作用在球上的力会相互抵消,从而使球保持完全静止。
通常使用哪些方法来解决这种情况?某种优先级排队系统可能会起作用,尽管一旦我需要在两个以上的对象之间确定优先级,我就会发现它变得很复杂。