Panda Bullet

enn0x, I made two changes to the Bullet code that I wanted to make you aware of.

(1) is_deactivation_enabled() and set_deactivation_enabled() worked a bit oddly - if deactivation was enabled, but the object was currently active, calling set_deactivation_enabled(true) could actually cause it to become deactivated immediately. I think the current behaviour makes slightly more sense. I ran into this issue when implementing point (2) below.

(2) By user requests, I’ve implemented the TypedWritable interface for some of the Bullet classes. This allows reading and writing Bullet nodes and shapes from/to a .bam file.
Only a few basic things are supported so far (rigid body, box, sphere, plane, convex hull, trimesh), but the hope is that eventually most Bullet functionality will be writable to a .bam file.
Eventually, this will pave the way to being able to load Physics information from model files, which formats like COLLADA and Blender can already do.