Box2d SetLinearVelocity无法使用重力

时间:2011-02-16 21:22:37

标签: iphone ios cocos2d-iphone box2d box2d-iphone

我的box2d世界里有一个身体(玩家)。

每当我尝试设置其x速度(每2秒或其他任何时间)并且由于重力而下降时,它会上下抖动。

我还尝试将其y速度设置为等于重力(-30.0f)但是它会更糟糕。

Tyvm。

1 个答案:

答案 0 :(得分:1)

那是因为你的玩家被创造为一个动态的身体。因此,重力在每个模拟步骤中应用于玩家,导致他/她改变速度。

放置你的玩家b2_kinematicBody - 然后不会对它施加任何力量。如果您仍然希望玩家动态应用力-playerMass*gravityVector每一步(或将b2World的autoClearForces参数设置为false并施加一次力)以移除重力。