如何阻止在box2d中作用于身体的力量

时间:2011-09-25 05:07:11

标签: iphone xcode cocos2d-iphone box2d physics-engine

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

1 个答案:

答案 0 :(得分:25)

box2d会自动清除每个模拟步骤的强制。我认为你只是在重置时改变身体的位置,但不是它的速度。将此代码添加到重置方法:

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