Native Bullet versus JBullet

We had it in Monake as well: Fix Physics, ez-pz · MeFisto94/Monake@f562ad1 · GitHub
Unfortunately it’s not a good test application as you are missing the assets (licensing) and I don’t remember what kind of problems we had, it was either: Walking speed was capped, you couldn’t get any faster for some reason, ghost collisions not happening or falling through random planes.

The last one is also an interesting “bug” in Bullet: before Remove roll and pitch angles, so that the character behaves like a re… · MeFisto94/Monake@d271260 · GitHub one could move the capsule in two rotation axis (x and y), and when looking down you would typically fall through the ground.

Don’t ask me if that is expectable or maybe related to precision, CCD or whatever, but this could be experimented with a test as well (a capsule whose physics rotation is basically camera.getLookAt())

1 Like

Thanks for the links.

I really want to investigate these issues—or at least document them properly. However, I’d want to start with simple, self-contained examples.

PS: Note there are 2 ways to achieve a fixed time-step in JME physics:

  1. By passing a positive maxSteps to PhysicsSpace.update(float time, int maxSteps) (how BulletAppState does it)
  2. By passing a fixed time to PhysicsSpace.update(float time, int maxSteps) (the solution discussed above)
1 Like