This isn't so much a big report as just an indicator for anyone looking through here that there is some activity. Because the code as it is here won't work on LWJGL3 (and running on LWJGL3 is helpful for anyone using the current gdx-setup, or running on an M1 Mac), I ported the code to use Gradle 7.6, LWJGL3, libGDX 1.11.0, and so on. It's available here, https://github.com/tommyettinger/xoppa-gdx-3d-lwjgl3 . I didn't enter it as a PR because it requires substantial changes to the whole repo to get it working with Gradle, and also because this repo hasn't been updated in 6 years. I don't know if I ported some of the Bullet code correctly; the API has changed since this code was written, and there isn't a clear way to move ahead from:
btCollisionAlgorithm algorithm = dispatcher.findAlgorithm(co0.wrapper, co1.wrapper);
Because findAlgorithm()
now takes four arguments. At this point, I'm using:
btCollisionAlgorithm algorithm = dispatcher.findAlgorithm(co0.wrapper, co1.wrapper,
new btPersistentManifold(), ebtDispatcherQueryType.BT_CLOSEST_POINT_ALGORITHMS);
There could easily be something wrong here, I just don't have any idea what. This affects steps 3, 4, 5, and 6 in the bullet/ directory.
I should also mention that https://github.com/mgsx-dev/gdx-gltf is available now, and makes some tasks from this tutorial much easier or obsolete (such as using fbx-conv), though the general structure for how to do anything in 3D with libGDX is still very useful.