Box2D中睡眠物体的缺点

9

在创建Box2D世界时,您可以选择启用物体休眠(如果它们停止运动,则不对其进行模拟)。为什么不将休眠设为默认选项?它有哪些缺点?

在Box2D中,默认情况下不启用休眠的原因是因为它会导致一些性能消耗。当启用休眠时,Box2D需要在每个时间步骤中检查每个物体是否要进入休眠状态,这可能会减慢模拟速度。此外,如果物体被快速移动或碰撞,则可能无法正确进入休眠状态,从而导致错误的模拟结果。
1个回答

9

根据我的经验,在其他物理引擎中,当物体静止时自动进入休眠状态是默认行为。我能想到的不让物体进入休眠状态的主要原因是:一旦它们进入休眠状态,只有碰撞才会唤醒它们。也就是说,如果你移除了支撑休眠物体的物体,它并不会掉落,而是悬浮在空中直到有物体与之碰撞并再次受到重力影响。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接