An Havok hatte ich noch garnicht gedacht. In Oblivion war ich damals begeistert, was die Physik angeht, da steckt ja Havok dahinter. Wie geil.
Da sind des jetzt aber schon 6 Engines.
Afaik ist Havok optimiert für intel-Prozessoren (ob das wirklich soviel mehr bringt?).
Zu PhysX hab ich mich mal ein bisschen erkundigt.
Derzeit setzt PhysX auf CUDA - parallele Berechnung per GPU - auf. Das wird nur von nVidia unterstützt. Allerdings arbeitet nVidia auch an OpenCL-Support.
Da wird sicher Druck von den Games-Firmen kommen, PhysX auf OpenCL umzusatteln. Weshalb PhysX eines Tages auch auf ATI-Karten laufen könnten, weil die auch OpenCL unterstützen wollen.
Link
Es wird noch ein Stück dauern, aber wenigstens ist dann der Support da.
Also spricht alles für PhysX.
Was ich will: Geplant ist eine Art futuristischer Unterwasser-Shooter. Als Physik-Features kommen: Wasserströmung, Terrain (Unterwasserlandschaft) und korrekte Kollisionen mit dem Terrain und Dreck-Aufwirbeln (Auf schlammigen/sandigen Stellen) -> Viele Partikel, die realistisch davonschwimmen (Strömung -> Wind?). Weiterhin kann man Gebäude zerballern und Einstürzende Gebäude sollen realistisch fallen. Luftblasen als Parikel kommen auch noch hinzu.
Ich glaube das ist ertmal verwirrend, vieleicht auch zuviel. Jedenfalls ist es mir zu viel Arbeit dafür eine eigene Physik-Engine zu schreiben.
Newton, Bullet, Tokamak und ODE sind gut, aber nicht führend und teilweise schon angestaubt. Dazu hab ich einiges über schlechte Performance gehört. Kann sein, dass es nur Gerüchte sind.
Jedenfalls bin ich mir ziemlich sicher, dass es PhysX sein wird.
Die Gründe sind:
mehr Performance durch Berechnung per GPU
Bald auch Support für ATI-Karten (sieh Link oben)
Aktuell eine der besten Engines