from jbullet to libgdx bullet wrapper



I've been in the process of trying to port jbullet to libgdx's bullet wrapper. So far I've managed to re-implement rigidbodies back into the main game using the libgdx wrapper. The functionality of this is dependent on a patched version of libgdx. I've ported the voxel portion from the bullet3 repo that @Immortius has available in the Terasology org along with some code from Tera bullet. There is still a lot to be reworked and I've managed to introduce bugs as I've attempted to port this over. For the moment I've just been trying to get this to work so some of the back end will have to be cleaned up as the codebase gets tweaked.

There are still some issues I can see with these changes. I don't know at the moment how this affects other modules and how they behave. For the most part the port involved just renaming classes in the engine from BoxShape to btBoxShape. I would consider it fairly one to one in terms of moving from Tera bullet to libgdx. There is probably some behavior that is new to this that doesn't exist with Tera bullet or vise versa.

  • Player falls straight through the world
  • The Player is not able to pick up any blocks
  • There may be some potential memory leaks in regards JNI wrapper and bullet
  • I haven't been able to test convex meshes and they probably don't work
  • Haven't looked at how these changes react in regards to networking
  • I don't know how this will affect mods
Going forward I would like to open up the physics system more to modding. I'm not sure at the moment, but that will have to be organized.


Last edited:


Org Co-Founder & Project Lead
Great to see this making so much progress! I'll yield the floor to the more physics minded individuals though on helping puzzle out further details :D

Pings going out to @Immortius @Skaldarnar @Josharias @Anthodeus @Shine @niksoc @Nihal Singh and I'm probably missing more.

Betting there'll be some fun with collision groups involved in going further.