Evaluation des PhysX SDK

Ziel des Praktikums war es, eine Übersicht darüber zu bekommen, was PhysX kann und was es nicht kann. Dazu haben wir uns verschiedene Szenen überlegt, die wir implementiert haben:

Dominos

Per Tastendruck lassen sich Dominos zu Geraden und zu Viertelkreisen aufstellen und mit Maus und Tastatur umwerfen. Die Rotationen werden entweder über Quaternionen oder über Rotationsmatrizen realisiert. Es gibt außerdem ein paar vorgefertigte Türme aus Dominosteinen, die in die Szene eingesetzt werden können.

Ein riesen Haufen Dominos

Strömungskanal

In einem quaderförmigen Kanal umfließt eine Flüssigkeit einen Würfel. Dafür werden Partikel (NxFluid) von einem NxFluidEmitter auf der vorderen Seite des Strömungskanals erzeugt und auf der hinteren Seite durch einen Drain wieder entfernt. Jeder Körper der Szene kann als Drain fungieren, wenn das entsprechende Flag gesetzt ist. Flüssigkeiten können mit anderen registrierten Objekten interagieren, mit Ausnahme von anderen Partikelsystemen.

Ein Strömungskanal, in dem Flüssigkeitspartikel einen Würfel umfließen

Für die Simulation stehen 3 Modi zur Verfügung:

Normaler (einfacher Modus)
Dieser Modus ist nicht sehr genau, dafür aber performanter als die anderen beiden.
Smoothed Particle Hydrodynamics
In diesem Modus werden Kräfte zwischen den Partikeln berücksichtigt. Das ist genauer, aber auch langsamer.
Gemischter Modus
Hier wird die Dichte berücksichtigt