Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

基于冲量的碰撞响应

当碰撞检测系统报告两个物体发生接触时,我们需要一种机制来阻止它们互相穿透,并根据它们的物理材质(如弹性)来模拟碰撞后的反应。在实时物理引擎中,最流行、最高效的方法就是基于冲量的碰撞响应 (Impulse-Based Collision Response)。与基于力的模型(需要极小的时间步来模拟接触力)不同,基于冲量的方法将碰撞视为一个瞬时事件,通过施加一个冲量 (Impulse) 来瞬间改变物体的速度,从而实现碰撞响应。

基于冲量的碰撞响应是现代物理引擎的基石。它通过一个在物理上坚实、在数学上优雅的公式,将复杂的刚体碰撞简化为一个求解瞬时冲量 j 的问题。这个冲量的大小,由碰撞前的相对法向速度、物体的恢复系数以及一个被称为“有效质量”的组合惯性量共同决定。虽然我们在这里推导的是单个、无摩擦的碰撞,但这个核心思想可以被扩展,形成一个能够处理多点接触、摩擦和关节的统一框架——约束求解器 (Constraint Solver)