b2Vec2 force = b2Vec2(xAcceleration, yAcceleration);
force *= dt; // Use this if your game engine uses an explicit time step
b2Vec2 p = myObjectBody->GetWorldPoint(b2Vec2(0.0f, 0.0f));
body->ApplyForce(force, p);
Изменяя xAcceleration
и yAcceleration
, вы можете заставить объект двигаться с различными скоростями в разных направлениях.(Если вы рассчитываете углы, вы можете использовать force.Normalize();
, а затем умножить на скорость.)