11

我在 iphone 上使用 box2d 来创建游戏。我有一个受重力影响的身体向下移动而不是向右或向左移动。它会被另一个物体击中,然后向右或向左移动。然后我有一个重置按钮,可以将身体移回起点。唯一的问题是它仍在向右或向左移动。我怎样才能抵消球已经在移动的力?重置游戏时如何摆脱这种左右移动?

4

1 回答 1

27

Box2d 自动清除每个模拟步骤的力。我认为你只是在重置时改变了身体的位置,而不是它的速度。将此代码添加到您的重置方法中:

body->SetLinearVelocity(b2Vec2(0,0));
body->SetAngularVelocity(0);
于 2011-09-25T10:10:58.307 回答