Ситуация такая:
- физический движок Box2d
- Есть объект
- Есть кривая представляющая холм (2D вид с боку в разрезе)
Объект скатывается с холма и подлетает на кочках (холм и кочки - это одна кривая EdgeShape)
Как сделать, чтобы объект как бы "прилип" к поверхности и не подскакивал? Вариант с увеличением силы тяжести/веса не проходит, т.к. из-за этого изменяется скорость движения объекта
Другими словами, как сделать фиксированное максимальное расстояние от объекта до кривой?
Это называется по-русски: неголономная связь... Фиксированное расстояние, чтоб было.
Вводи силы которые будут возвращать объект на заданное расстояние. Это будут твои силы связи.
ПРедставь себе, что над твоей поверхностью есть потолок, и твой объект подскакивая - бьется об потолок.
Но это сильно модельное решение. ПРоще считать, что твой объект просто движется по заданной линии. Не соскакивая с нее. Значит, скорость - касательная к этой линии, срезай компоненту скорости не касательную к линии. ))
Тема в архиве.