バウムガルテ安定化
位置誤差の一部を速度バイアスとして戻すことで、速度を直すソルバーに重なりもゆっくり解消させる、拘束ソルバーの工夫。
接触や関節の拘束は、本来「この物体同士は重ならない」という位置についての条件だ。ところがソルバーは速度で動く。補正しなければ、位置の誤差は気づかれないままドリフトする。バウムガルテ安定化は、速度の目標値に項β·C/Δtを足す(Cは誤差、つまりめり込み量)。ソルバーにわずかな追加速度を与え、数フレームかけて重なりを削っていく。
手法の由来はJoachim Baumgarteの1972年の研究で、もとは多体動力学の微分代数方程式のためのものだった。安価で、数多くのゲームエンジンに入っている。ただし弱点も有名で、エネルギーを注入してしまうため、βが大きすぎると接触が跳ねて震える。現代のソルバーが、スプリットインパルスや、エネルギーに触れずに姿勢だけを直す別の位置ソルバーに切り替えることが多いのはこのためだ。