У меня есть b2Body, который направляется к верхней части экрана с неизвестным «linearVelocity.y». Как я могу заставить linearVelocity замедляться и быть 0, когда он находится чуть ниже вершины и позволяет взять гравитацию?Как замедлить ход b2Body к краю экрана пошагово, где скорость равна 0, когда она достигает края?
- Я пробовал LinearDamping, но объект не всегда замедляется, прежде чем покинуть верхнюю часть экрана.
- Я также попытался использовать ApplyImpulse с
-linearVelocity.y
, когдаobject.position >= screen.Height - object.contentSize.height
, но это, кажется, не замедляет его в достаточно гладкой манере.
Любая помощь будет потрясающей!
Edit: Пример этого может быть ограничением высоты в игре «Tiny Wings»
Я догадываюсь, что мой вопрос сейчас ... Сколько мне нужно, чтобы уменьшить его каждый кадр, так как linearVelocity.y может быть разной скоростью разницы? Спасибо за ответ! –
Вы можете поэкспериментировать с разными объемами, чтобы узнать, что выглядит правильно, но если бы я был вами, я бы уменьшал скорость, исходя из того, как быстро она проходила, когда она проходила, изначально прошла ваш порог и как далеко за порог, который он сейчас находится. .. –