![](/img/trans.png)
[英]applyImpulse and applyForce accumulate forces, they don't replace them
[英]box2d forces (applyimpulse and applyforce)
尽管在box2d前花了好几个小时,我仍然不明白applyforce和applyimpulse是如何工作的。 我试图用一些视觉来更好地理解正在发生的事情(通过在身体位置和应用点之间划线),但我尝试的越少,它就越有意义。
我想使用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工作时遇到困难。
提前谢谢了!
我认为问题可能是画布的位置,用删除canvas.left
替换你的鼠标坐标,它可以工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.