Choosing Panda?

I hate to just jump in here: but it was my understanding that not everything in panda is really usable using C++, which is why it is recommended to use python and the reason that the C++ references/manual are not completed as well as the python pages.

Also, as coppertop stated, if you have bullet working with the C++ commands then making bindings for those methods should be a simple procedure. I dont remember what tools drwr and rdb use to create the bindings, but a forum search should yield some results.

No, this is not really true. Pretty much everything is available to C++ coders, except for a few high-level add-ons that people have written specifically for Python, such as the Actor interface. But these are relatively unimportant pieces, and the important bits that implement these add-ons are still there in C++.

The main reason we recommend Python is for the reasons that ThomasEgi reports, above–for a given amount of developer time, you can write a much better application using Python than if you used C++, because Python is so much more efficient for developers.

There are many tools that can be used to make Python bindings for C++ code. Not all of them are straightforward or easy, though.

David

I appreciate the comments on the bindings. But, given 1.8 isn’t out yet and my development box is a mac, a direct conversion of the C++ stuff we have, using bullet 2.79 as I am now, might be the easiest step toward Panda. Doing my own bindings might be a temporary step anyway. Maybe after 1.8 is out, moving to Python and replacing the physics with the methods used in the Panda implementation would be easier.

Converting math, animations, and models are a good start. The only hard part is probably going to be pulling the vertex/index data from an egg to build the level physics triangle meshes. I’m betting that work is already exposed in the 1.8 source and in C++.

I started an XCode project to try this out with my panda demo last night. I haven’t had time to continue that today.

Just for the record: the current CVS head of Panda3D compiles fine with the latest Bullet sources. On my local machine I use Bullet r2477, which is even newer then the 2.79 (r2740 I think?) release.