50. Пружинки Будды
Мягкие ограничения (Soft Constraints)
Взяв адекватный интегратор и уравнения пружинки, можно уже делать крутые вещи. По типу таких:
Но очень быстро появляется несколько проблем, которые портят жизнь. Во-первых, если пружинка слишком жесткая, то симуляция развалится. Во-вторых, настройка параметров пружинки – это отдельное искусство. Поэтому в некоторых движках вместо вместо симуляции пружинки делают что-то что визуально похоже на нее, но математически пружинкой не является. Поэтому такие примитивы называют soft constraints. В этот раз я хочу рассказать о том как реализованы мягкие ограничения в Jolt, Box2D и ODE.
Для того чтобы упростить настройку пружинки нужно почти сразу переходить от настройки жесткости с дампингом на настройку частоты и доли критического дампинга.
Источники
Слайды от создателя Box2D Erin Catto : Soft Constraints