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

Reply via email to