我目前正在使用jbox2d在Java上制作自上而下的gfx actiong RPG。基本上,我希望敌人在被玩家击中后向后退(带有自上而下的图形,我没有摩擦或重力)。我尝试恢复原状,施加脉冲并设置线速度,但没有得到我所期望的结果:敌人立即传送到目的地,如果敌人靠近墙壁,他们就会被移植到地图之外。我该如何解决?您认为最好的解决方法是什么?非常感谢

最佳答案

我不知道您如何同时使用jbox2d和c ++ ...

无论如何,如果您的敌人用b2_dynamicBody物理表示,则您可能想要apply a linear impulse并将敌人身体的linear damping设置为大于零的值。线性阻尼的作用类似于空气阻力-物体移动得越快,在相反方向上施加的力就越大。施加较大的线性脉冲并设置较高的线性阻尼会导致您的敌人以很高的初始速度从您的英雄飞走,但是它们很快就会静止下来。

我希望这有帮助!

10-08 03:54