C++ Box2D - 如果不管它,动态物体不受重力影响

7 c c++ box2d sfml

我在SFML2中玩Box2D并实现了; 当我改变世界的引力时,未受影响的动态物体不会受到重力变化的影响.我准备了一个视频,使这个解释更加清晰.

有解决方案吗 我是否必须发挥自己的引力,为什么会发生这种情况?

这是视频.请注意,如果物体不会移动一会儿,它们不会受到最近移动的物体的影响.

yid*_*ing 6

Box2D中的物体在休息后进入睡眠状态.更改重力等参数后,您必须通过调用WakeUp所有对象来唤醒睡眠对象.当物体与物体碰撞时,物体也会自动被唤醒,这就是为什么重力似乎在物体与物体碰撞后开始生效的原因.