JNI binding for Panda3D C++ code


For how we are going to be using Panda3D internally at my company, it would be significantly better for us to access it via Scala/Java. As such I have been working on extending interrogate/interrogate_module to generate appropriate JNI code.

I believe I have a 95% working solution presently, and am now plumbing through running it over the actual Panda sources. Once I have something that actually runs, I’ll happily do a deeper dive on what was needed.



A brief update here.

Work progresses on this.

  • JNI C++ and Java code generation is integrated into interrogate/interrogate_module
  • JNI support is added to PANDA build system

At present I’m playing whack-a-mole with edge cases that turn up from the PANDA code that I didn’t have represented in my toy testbed. This is expected and I’m working through them without too much horror so far.

I’m really hoping to have a smoke-test with Java able to open a window in the next week.