Подтвердить что ты не робот

Как остановить силы, действующие на тело в box2d

Я использую box2d на iphone для создания игры. У меня есть тело, которое под действием силы тяжести движется вниз, а не направо или налево. Он попадет в другое тело и будет двигаться вправо или влево. Затем у меня есть кнопка reset, которая возвращает тело в исходную точку. Единственная проблема заключается в том, что он все еще движется вправо или влево. Как я могу противодействовать силам, которые мяч уже совершает? Как я могу избавиться от этого правого и левого движения, когда я reset свою игру?

4b9b3361

Ответ 1

box2d автоматически очищает силы каждого шага моделирования. Я думаю, вы просто меняете положение тела при переходе, но не скорость. Добавьте этот код в свой метод reset:

body->SetLinearVelocity(b2Vec2(0,0));
body->SetAngularVelocity(0);