在Box2d中仅将速度应用于一个轴(X或Y)?

时间:2012-04-05 21:36:26

标签: android box2d andengine

我试图让玩家在接触平台时跳入我的游戏,但同时它应该由加速度计控制左右移动。 所以,我正在考虑在接触式侦听器的Y轴上应用线性速度使其跳跃,同时在加速度计改变其值时在X轴上应用线性速度。

问题是当我使用setLinearVelocity方法时,它会在两个轴上设置Velocity的值。因此,播放器不会跳跃,因为加速度计会改变Y轴上的速度值。

有没有人知道如何做到这一点?

1 个答案:

答案 0 :(得分:2)

b2Vec2 v = body->GetLinearVelocity();
v.x = ...;
body->SetLinearVelocity( v );