0

我正在关注本教程: http ://www.raywenderlich.com/475/how-to-create-a-simple-breakout-game-with-box2d-and-cocos2d-tutorial-part-12

但在最后一部分,它展示了我们如何通过对物体施加阻尼来降低速度

            if (speed > maxSpeed) {
                b->SetLinearDamping(0.5);
            }

其中“b”是世界对象上的一个实体。

我正在寻找一种通过设置线性加速度来提高速度的方法(也许通过施加力?我真的不知道该怎么做)

任何人都可以帮助我吗?提前致谢

4

2 回答 2

1

您可以使用 :

b2Vec2 force;
force.Set(10.0f, 0.0f);

b->ApplyForce(force, b->GetWorldCenter());

这将在您的身体上设置一个正 x 方向的力,为您的身体提供恒定的加速度。

于 2012-09-03T06:51:32.630 回答
0

如果也通过施加力找到了方法

b2Vec2 velocity = b->GetLinearVelocity();
if (speed <minSpeed) {
   b->ApplyForceToCenter(velocity);
}
于 2012-09-16T14:14:05.823 回答