我有一个动态的身体,在我的更新循环中,当我使用SetLinearVelocity时,我能够移动它,但是当我使用ApplyForce时,身体根本不会移动。关于向b2DynamicBody施加力量,我有什么遗漏吗?
var force:b2Vec2 = new b2Vec2();
if (keyIsDown(Keys.S)) force.y = 6;
if (keyIsDown(Keys.A)) force.x = -6;
if (keyIsDown(Keys.D)) force.x = 6;
_body.SetAwake(true);
if (force.x != 0 || force.y != 0)
_body.ApplyForce(force, _body.GetPosition());
提前致谢。
答案 0 :(得分:1)
此代码是否在您的更新功能中?你确定将力设定为6?
我还要确保力足够大以移动物体。也许将它增加到60或600,看看它是否有所作为。如果摩擦力很大,小的力就不会移动物体。