2012-04-13 82 views
3

儘管在box2d面前花了數小時,我仍然不明白如何applyforce和applyimpulse作品。我試圖用一些視覺來更好地理解正在發生的事情(通過在身體位置和應用程序之間建立線條),但我嘗試的越少,意義越小。box2d力量(applyimpulse和applyforce)

我想使用applyimpulse讓我的box2d主體在應用程序的方向(鼠標座標,在這種嘗試中)跳轉。它會比期望的點之外的任何地方......

下面是我的一些嘗試,迄今:

b.ApplyImpulse(
new b2Vec2(g.mouseX/SCALE,g.mouseY/SCALE), 
new b2Vec2(b.GetPosition().x,b.GetPosition().y)); 

和對面

b.ApplyImpulse(
new b2Vec2(b.GetPosition().x,b.GetPosition().y), 
new b2Vec2(g.mouseX/SCALE,g.mouseY/SCALE)); 

都產生不可預知的結果,我不完全理解。

可以請某人解釋ApplyImpulse對我來說好像我是5年?我怎樣才能決定衝動的強度?和方向?似乎沒有人在互聯網上解釋這一點。

請原諒我可憐的物理背景,我嘗試了許多不同的方式,這個問題幾乎讓我陷入任何時候與Box2d工作。

非常感謝提前!

+0

你如何獲得規模有多大? – Gabber 2012-09-20 10:13:55

回答

0

我想問題可能是在畫布上的位置,替換您的鼠標刪除canvas.left座標,它可以工作