深入探讨Box2D中ghost collision问题解决方案

在使用Box2D引擎时,我们必须牢记它只能对物理世界进行近似的仿真。这其中最根本的原因是帧速受限,而且在pix<->meter换算以及其它乘除法的约算上,会衍生出大量的边界问题。在box2d官方的FAQ页上可以看到这样一条提示:What are the biggest mistakes made by new users?  Expecting Box2D to give pixel perfect results.  这句话应当引起我们相当的注意。 对于“高速刚体穿越碰撞块”以及本文将讨论的“ghost collision”问题,目前还没有一个100%完美的解决方案。有时我真为这种bug感到抓狂,但是细想一下,如果要我自己去设计这样一套引擎,未必能做得更好。 ghost collision问题如下图所示: A块和B块代表固定的地面,蓝色块代...阅读全文