This last weekend at the Google Summer of Code Mentor's Summit I had a chance to compare notes with a Crystal Space developer. They've chosen Bullet for their physics engine over ODE and heavily encouraged me to look into it for PySoy.
We originally went with ODE because it's what Soya used and thus many of us were already familiar with it, and at the time Bullet was just a collision library (not handling physics at all). Since then it appears that Bullet has surpassed ODE, being used for many mainstream games and even being ported to the PS3. There appears to be a few limitations, such as fewer supported joint types (Bullet calls them constraints), but many new features such as soft body physics and more collision shapes. I have been told by many people that Bullet is far more optimized for collision than ODE thanks to a great deal of work by commercial game developers adapting it for their needs. Another huge advantage of Bullet over ODE is that it actually is designed to be a dependency, where ODE we get into a compatibility hell since it can be built so many different ways and potentially conflict with expected behaviour. The recommendation by the ODE team has always been to build our own copy of ODE just for our engine and not using a system-wide ODE installed as a dependency. I think it would be unwise for us to do anything along these lines until after beta-3 release, but I would like to have a roadmap for beta-4 that settles the physics library question soon. Our roadmap needs to be seriously revised in any case. Other comments on Bullet vs ODE? Preferences? Volunteers to do this work?
_______________________________________________ PySoy-Dev mailing list [email protected] http://www.pysoy.org/mailman/listinfo/pysoy-dev
