2012-11-14 61 views
1

我有一個動態的物體,並在我的更新循環中使用SetLinearVelocity時,我可以將其移動,但是當我使用ApplyForce時,物體根本不會移動。關於向b2DynamicBody應用武力,有沒有什麼我不知道的?動態物體無法響應.ApplyForce

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()); 

在此先感謝。

回答

1

此代碼在您的更新功能?你確定力量是否設置爲6?

我也會確保這個力量足夠大以移動物體。也許增加到60或600,看看它是否有所作爲。如果摩擦力很高,小力量不會移動物體。

+0

噢,力量太小了,600移動它...我在60試過了,但沒有奏效,所以我懷疑還有其他的東西。謝謝你的幫助。 – Shannon

+0

不客氣。 –