快速运动物体的碰撞检测
该到介绍一些比较复杂的应用的时间了,这个视频中的内容将涉及到 碰撞检测 以及 可视化调试工具。连续物理系统(ContinuePhysics System)是诸多物理引擎需要解决的最复杂的情况之一, 在PhysX物理引擎中并没有一个可行的解决方案,而Havok 和Bullet 则给出了很好的结果。
在 Havok Physics 中,把连续碰撞检测中得到的碰撞称为 TOI(Time OfImpact)事件。这意味着Havok 可以准确的知道一个物理模拟单步内,快速运动的刚体,发生碰撞的准确时间,并根据这一时间进行反复推演,从而得到这个模拟单步后,物理世界中的所有刚体的正确位置。 视频使用了一个 牛顿摆,来阐述 TOI检测的理论。最主要的理论部分就是:物体是“滑过”物理世界的,而不是一般的跳跃式行进。在滑过的区域内一旦与其他物体有了碰撞,所有物体就会返回到碰撞的那一个时间点(TOI),进行处理,整合,然后再从那一时间点开始运动,一直重复这一过程知道物理单步时间结束。
TOI的性能消耗很大,视频也给出了一些设置上的技巧,让你可以在性能和准确性之间进行一些选择性的调整。
|