Java LibGDX+Box2D |如何使两个实体之间的关节变硬?/如何使物体落得更快?

Java LibGDX+Box2D |如何使两个实体之间的关节变硬?/如何使物体落得更快?,java,libgdx,box2d,Java,Libgdx,Box2d,我的平台使用LibGDX和Box2D。 我以前做过一个原型,但是我在斜坡上遇到了问题,因为我只是在球员的中心向左或向右施加了一个力。所以我想为什么不让Box2D来做这项工作,因为我已经在使用它了。我试图实现这一点: 这段视频很好地展示了这个想法 基本的想法是让玩家不仅仅是从盒子里出来。但是,脚应该是圆形的。这样一来,斜坡就不会那么痛苦了。所以我创造了两具尸体。和他们一起测试,我发现了一些奇怪的东西。两个身体加在一起比同样宽度和高度的盒子更能让运动员身体跳跃 框和玩家的相等跳跃示例: if (Ga

我的平台使用LibGDX和Box2D。 我以前做过一个原型,但是我在斜坡上遇到了问题,因为我只是在球员的中心向左或向右施加了一个力。所以我想为什么不让Box2D来做这项工作,因为我已经在使用它了。我试图实现这一点:

这段视频很好地展示了这个想法

基本的想法是让玩家不仅仅是从盒子里出来。但是,脚应该是圆形的。这样一来,斜坡就不会那么痛苦了。所以我创造了两具尸体。和他们一起测试,我发现了一些奇怪的东西。两个身体加在一起比同样宽度和高度的盒子更能让运动员身体跳跃

框和玩家的相等跳跃示例:

if (GameKeys.isPressed(GameKeys.SPACE)) {
    if (cl.isPlayerOnGround()) {
            playerBody.applyLinearImpulse(new Vector2(0, 1800), playerBody.getWorldCenter(), true);playerBody.getWorldCenter(), true);
            box.applyLinearImpulse(new Vector2(0, 10), playerBody.getWorldCenter(), true);
    }
}
原因是我对球员身体使用了高密度,以防止关节反弹,使其更加僵硬。 我的问题是:

有没有更好的方法来防止脚和球员身体之间的关节非常有弹性,而不是仅仅将其密度设置得非常高

有没有常用的公式来获得好的密度,或者只是调整值直到感觉合适

除了干扰下降常数-9.81f外,还有没有办法让物体下降得更快?球员的物体和盒子此刻感觉有点飘浮

我知道这是多个问题,我希望我不要问太多,但感谢所有读过这些乱七八糟的东西的人^^

每米PPM的像素数是32

My Play.java:


附言:我的英语很差。我不是以英语为母语说德语的人

另一个让玩家从一个圆圈和一个盒子中走出来的例子是:我对Box2D不是很有经验,但是对于第3个例子:使用setGravityScale给物体一个更高的重力。你不需要两个物体。只要把两个固定装置放在一具尸体上。@iforce2d我已经试过了。但是如何设置第二个夹具的位置,即相对于盒子中心的圆?因为现在它只是被添加到盒子的中心。代码:CircleShape应该有一个可以设置的“中心”成员b2Vec2。