Native Bullet versus JBullet


My physics and (real) math days are far behind so I’m probably little use, but what kind of help (and hassle) were you referring to?


As I said, I’d appreciate help documenting issues. Fixing them too, if you have relevant skills or are willing to learn.

Other needs I’m aware of:

  • check the wiki (and javadoc) for accuracy and clarity, fix any issues
  • write more example code:
    • an example using GImpact shapes
    • an example using simplex shapes
    • an example using cone shapes
    • an example that clones physics controls
    • an example that serializes physics controls
    • an example of a simple physics server and client
  • set up automated testing to catch regressions (like we have for jme3-core)
  • set up continuous-integration builds of Android natives (like we have for desktop)

I won’t detail the hassles of supporting the physics libraries—lest I discourage anyone or sound like a whiner.


in theory, java’s physics libraries can give the same result in all environments by strictfp. On a well-tuned physics stage of a one-person offline game, it helps creator to reproduce the expected results in any environment.
C ++ physics libraries can not do that.

For me, the binary level cross-platform is the strength of jmonkey.

However, jbullet does not seem to use strictfp. But using strictfp is easy.

If jbullet and bullet native implement the same API, and if jmonkey chooses a library to use depending on whether the native-bullet supports the runtime environment, it will improve cross platform. However, it does not have the exact same API, and jbullet seems too old.

P.S. I’m sorry for disturb veteran chat.


The “downside” would be that you’re losing some precision for more capable platforms. Would that matter if you’re only simulating physics locally? I don’t know, but if I’m only targeting desktops, I don’t want someone’s crappy phone limiting my design. Well I’m sure it already does due to JME support, but it’s not something I’m jumping at a chance to expand on.

Dang kids with all that modern technolergy… and get off my lawn too.


Dang kids with all that modern technolergy… and get off my lawn too.

:rofl: they need your lawn to catch that pokemon in game! then phone app say them to share photo when they are on your lawn on FB to get more points! and they even dont know GPS send their location into metadata.


Okay, we’ll see where I go with this if anywhere, but maybe I can lend a hand. First finding…

With all these apparent “bugs” turning up in the NB 11 Gradle maybe I’ll have to revert to 10 at some point, but that one looks workaround-able.


For the examples listed above, did you mean for jme3-examples in Git, or “wiki examples”?


I was thinking of jme3-examples when I wrote that.


PR for one out. Let me know if you’ve got any specific ideas and I’ll see what I can do.


@lifeinwild Just noticed this - no disturbance! It’s great to see knowledgeable new users show up! (Love the kitty photo btw.)