Wie kann ich Grafiken auf Partikelsimulationen überlagern? Wenn ich zum Beispiel eine Flüssigkeit oder ein Gas mit Tonnen von kleinen Punkten darstelle, wie kann ich diese Punkte wie eine Flüssigkeit oder ein Gas aussehen lassen? Nehmen wir zum Beispiel Nvidia Flex, sie simulieren Flüssigkeiten und Gase mit Tonnen kleiner Punkte, können sie jedoch als realistische Flüssigkeiten und Gase anstelle kleiner Kugeln darstellen.
simulation
physics
particles
Andrew Wilson
quelle
quelle
Antworten:
Ich denke, für das Rendern von Gasen besteht der übliche Ansatz darin, jedes Partikel einfach als winzige Scheibe zu rendern. Gase verschmelzen nicht wirklich zu Oberflächen wie Flüssigkeiten, daher sollte dies zu akzeptablen Ergebnissen führen. Sie könnten danach möglicherweise eine leichte Unschärfe auf die Gasschicht auftragen, um sie zu erweichen und die Tatsache zu verbergen, dass sie aus diskreten Elementen besteht.
Flüssigkeiten hingegen neigen dazu, sich zu Tröpfchen und glatten Oberflächen zusammenzuschließen, sodass Sie irgendwie eine Oberfläche aus den Partikeln ableiten müssen. Eine Möglichkeit hierfür ist die Verwendung von Metaballs , die ebenfalls dieses Verhalten aufweisen und an unterschiedliche Flüssigkeiten und Partikeldichten angepasst werden können. Wenn Sie jedes Partikel als Metaball interpretieren, erhalten Sie eine implizite Gleichung, die Ihre Flüssigkeitsoberfläche darstellt. Um diese implizite Oberfläche zu rendern, können Sie sie mit einem Algorithmus wie Marching Tetrahedra in Dreiecke konvertieren oder mit Ray Marching direkt rendern. (Ray-Marschieren kann heutzutage problemlos in Echtzeit in einem Fragment-Shader durchgeführt werden.) Sie können diesen Ansatz auch für Gase verwenden, wenn Sie ein etwas weicheres Aussehen wünschen.
quelle
Eine gute Referenz für die Spielphysik ist, dass in diesem Kapitel 4 die grundlegenden frei verformbaren Oberflächen beschrieben werden (nurbs und bspline werden natürlich zitiert und ausreichend gut behandelt). Flüssigkeit und Gase werden stattdessen in Kapitel 5 behandelt (im Grunde genommen leitet der Autor das vereinfachte Modell der Navier-Stokes-Gleichungen ab). geeignet für Echtzeitanwendungen).
Ich denke also, was ich geschrieben habe, um Ihren Beitrag zu kommentieren, war korrekt, dh kombinieren Sie die physikalische Verformung des Punktes, der die Form der Oberfläche steuert, mit einer ffd-Berechnung.
Das Buch, das ich zitiert habe, sollte irgendwo / irgendwie im Web-Quellcode enthalten sein, und selbst zitiert es ein Beispiel für die von mir zitierte Technik. Wenn Sie dies benötigen, lassen Sie es mich für eine genauere Erklärung wissen.
quelle