Houdinis Pyro-Solver ist ein voxelbasiertes Simulationssystem, das Feuer, Rauch, Explosionen und andere volumetrische Gasphänomene durch numerische Lösung von Navier-Stokes-Strömungsgleichungen berechnet.
Rubrik: Software & Tools · Unterrubrik: SideFX Houdini · Niveau: Fortgeschritten
Was ist der Pyro-Solver?
Feuer und Rauch verhalten sich als kompressible Gase mit komplexen Strömungsdynamiken. Houdinis Pyro-Solver modelliert dieses Verhalten numerisch: Die Simulation diskretisiert den Raum in ein dreidimensionales Voxel-Gitter (intern als OpenVDB repräsentiert) und berechnet frame-by-frame die Entwicklung von Dichte, Temperatur, Geschwindigkeit und weiterer physikalischer Felder.
Erklärung
Physikalische Grundlage
Der Pyro-Solver basiert auf den inkompressiblen Navier-Stokes-Gleichungen, die um Kompressibilitäts- und Auftriebsterme erweitert sind. Vereinfacht beschreiben diese Gleichungen:
- Advektion: Das Feld bewegt sich mit der Strömungsgeschwindigkeit.
- Diffusion: Das Feld breitet sich durch Viskosität aus.
- Externe Kräfte: Gravitation, Windfelder, Turbulenz.
- Druckprojection: Stellt die physikalische Kontinuität sicher (Divergenzfreiheit).
Pyro-Felder
Ein Pyro-Container enthält typischerweise folgende Felder:
| Feld | Bedeutung |
|---|---|
density | Optische Dichte des Rauchs |
temperature | Temperatur (steuert Auftrieb und Glühen) |
fuel | Brennstoffmenge |
heat | Verbrennungswärme (verbraucht Fuel) |
vel | Geschwindigkeitsfeld (Vektorgitter) |
Emitter-Setup
Emitter sind SOP-Geometrien, die Pyro-Felder ins Simulations-Gitter einspeisen. Typische Emitter-Typen:
- Volume Source: Füllt ein Volumen mit Dichte/Temperatur
- Pump: Definiert ein lokales Geschwindigkeitsfeld
- Collision Object: Geometrie, die den Rauch ablenkt oder sperrt
Pyro FX Shelf-Tools
SideFX bietet vorgefertigte Setups über die Pyro FX Shelf:
- Fireball – Explosionskugel
- Torch – Fackelfeuer
- Smoke – Einfache Rauchsäule
- Billowy Smoke – Weicher, quellender Rauch
- Thin Smoke – Dünner, veritikaler Rauch
Diese Setups sind als Ausgangspunkte gedacht und können durch Anpassung der DOP-Parameter individualisiert werden.
Turbulenz und Mikro-Solver
Ein wesentlicher Qualitätsfaktor in Pyro-Simulationen ist Turbulenz. Der Pyro-Solver enthält dedizierte Turbulenz-Microsolvers:
- Gas Turbulence: Addet Noise auf das Geschwindigkeitsfeld
- Gas Disturb: Stört die Grenzschicht der Simulation
- Gas Match Field: Treibt ein Feld in Richtung eines Referenzfeldes
Durch geschicktes Schichten von Turbulenz-Microsolvers entsteht der charakteristische, chaotische Look großer Explosionen.
Upres-Workflow
Für Render-Qualität wird oft ein zweistufiger Workflow verwendet:
- Low-Res-Sim: Grobe Simulation mit niedrigem Voxel-Count für schnelle Iteration
- Upres-Sim: Hochauflösende Simulation, die die Low-Res-Bewegung nutzt, aber feinere Details hinzufügt (Gas Upres Node)
Beispiele
Feuerball-Explosion: Box-Emitter → Fireball-Shelf-Setup → DOP-Parameter anpassen (Auftrieb, Temperatur, Turbulenz) → Karma-Rendering mit Emission-Shader.
Industrieschornstein-Rauch: Zylindrischer Emitter → Smoke-Setup → Windfeld über Fan-Force → Camera-gerechte Turbulenz-Kalibrierung.
Fahrzeugexplosion (Film): Mehrere Pyro-Container für verschiedene Elemente: Primäre Explosion, sekundäre Feuerwolke, Aschewolken. Separates Caching und Compositing.
In der Praxis
Pyro-Simulationen sind das Aushängeschild von Houdini im VFX-Bereich. Nahezu alle großen Explosionseffekte in Hollywood-Produktionen der letzten 15 Jahre wurden in Houdini-Pyro entwickelt, darunter Sequenzen in Avengers: Infinity War, Mad Max: Fury Road und Transformers-Reihe.
Typische Studio-Workflows:
- Simulation in niedrigem Voxel-Count (z. B. 3 cm Voxelgröße) → Upres auf 1 cm → Render in Karma oder RenderMan
- Parallel-Caching auf Render-Farm (OpenVDB-Files)
- Compositing in Nuke mit CG-Pyro-Layer über Plate
Vergleich & Abgrenzung
Gegenüber Embergen (GPU-basiert, Echtzeit-Feedback) ist Houdini-Pyro langsamer, aber physikalisch präziser und besser in die Gesamt-Pipeline integriert. FumeFX (Maya-Plugin) bietet ähnliche Qualität, ist aber weniger flexibel. Blenders Mantaflow ist ein Open-Source-Äquivalent mit guter Qualität für kleinere Produktionen.
Häufige Fragen (FAQ)
Wie groß sollte die Voxelgröße für Film-Qualität sein? Typischerweise 1–3 cm für Primärelemente, 5–10 cm für Hintergrundeffekte. Kleinere Voxel bedeuten mehr Detail, aber exponentiell mehr Speicher und Rechenzeit.
Kann Pyro in Echtzeit in Unreal Engine gerendert werden? Nein direkt – aber Pyro-Simulationen können als OpenVDB-Sequenzen nach Unreal exportiert werden.
Wie importiere ich externe Wind-Daten in die Simulation? Über VDB- oder SOP-Felder, die als externe Kraft-Inputs in den DOP-Pyro-Container eingespeist werden.
Verwandte Einträge
- DOP-Netzwerk (Dynamic Operators)
- Volumes & VDB in Houdini
- Karma Renderer in Houdini
- Rigid Body Dynamics in Houdini
- FLIP Fluids – Flüssigkeitssimulation
Weiterführend
- SideFX (2024): Pyro FX – Getting Started. URL:
- Bridson, R. (2015): Fluid Simulation for Computer Graphics. 2. Aufl. CRC Press, Boca Raton.
- Museth, K. (2013): VDB: High-Resolution Sparse Volumes with Dynamic Topology. In: ACM Transactions on Graphics, 32(3).
- Anderson, J. D. (2010): Fundamentals of Aerodynamics. 5. Aufl. McGraw-Hill, New York.
