12.1.2 两种模拟物理世界的算法

更新于 2026年10月10日 版权声明
12.1.2 两种模拟物理世界的算法

(1)积分器(Integrator)的数值算法

积分器的数值算法能够在离散的时间点上模拟连续的物理方程,它与传统的游戏动画循环一同运行。我们需要为Box2D选取一个时间步。通常来说用于游戏的物理引擎需要至少60Hz的速度,也就是1/60的时间步。我们可以使用更大的时间步,但是必须更加小心地为这个世界调整定义。我们也不喜欢时间步变化得太大,所以不要把时间步关联到帧频(除非真的必须这样做)。(https://www.daowen.com)

(2)约束求解器(Constraint Solver)算法

约束求解器算法用于解决模拟中的所有约束,一次一个。单个的约束会被完美地求解,然而当我们求解一个约束的时候会稍微耽误另一个。要想得到良好的解,需要多次迭代所有约束。所以就有必要控制迭代计算的次数以防止无限循环,迭代次数为10能较好的模拟效果。

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)