约束求解器
Constraint Solver进阶物理引擎里算接触力和关节约束力的模块,保证物体不穿透、关节不脱开。
碰撞检测只告诉引擎「哪里接触了」,接触处要多大的支撑力和摩擦力、关节要多大的力才能保持连接,由约束求解器算。这些力要同时满足不穿透、摩擦力不超过摩擦锥等条件,本质是互补问题或优化问题,通常迭代求解。投影高斯-赛德尔(PGS)每次只更新一个约束分量,反复扫多遍;PhysX 5.1 起加入时间高斯-赛德尔(TGS),把一步拆成若干子步求解,官方文档称一般更推荐 TGS。MuJoCo 把约束力定义为一个凸优化问题的唯一全局解,提供 PGS、共轭梯度(CG)和默认的牛顿法三种求解器。迭代不够会导致穿模、关节漂移、抓取打滑,这是调仿真参数的重点。
例子PhysX 刚体默认 4 次位置迭代、1 次速度迭代;灵巧手抓取这类接触和关节都多的场景,常需调高位置迭代次数。
- 也叫
- 接触求解器、约束解算器
- 相关
- 求解器迭代次数、投影高斯-赛德尔求解器、线性互补问题、接触模型、软接触、物理引擎
- 来源
- MuJoCo Documentation: Computation - Constraint solver
NVIDIA PhysX 5 SDK Documentation: Rigid Body Dynamics - Constraint Solver - 信息截至
- 2026-09