Fluid-Simulation ist die computergestützte Berechnung des physikalischen Verhaltens inkompressibler oder kompressibler Flüssigkeiten und Gase auf Basis der Navier-Stokes-Gleichungen, um fotorealistische Wassereffekte, Blutszenen und flüssige Materialien in VFX zu erzeugen.
Rubrik: Animation & VFX · Unterrubrik: VFX-Techniken · Niveau: Fortgeschritten
Synonyme / Auch bekannt als: FLIP Simulation, SPH Simulation, Wasser-FX, Liquid Simulation, Hydraulics FX
Was ist Fluid-Simulation?
Fluid-Simulation modelliert Flüssigkeiten als kontinuierliche Materie, die den Gesetzen der Strömungsmechanik (Hydrodynamik) folgt. Das physikalische Kernmodell sind die Navier-Stokes-Gleichungen für inkompressibles Fluid:
`` ∂u/∂t + (u · ∇)u = −(1/ρ)∇p + ν∇²u + f ∇ · u = 0 (Inkompressibilitätsbedingung) ``
Dabei ist u das Geschwindigkeitsfeld, p der Druck, ρ die Dichte, ν die kinematische Viskosität und f externe Kräfte. Das direkte numerische Lösen dieser Gleichungen ist rechenintensiv und war lange auf akademische Computer beschränkt; heute ermöglichen GPU-basierte Solver Simulationen in Produktionsqualität in Stunden bis Tagen.
Erklärung
Simulationsmethoden
FLIP (Fluid Implicit Particle): Kombiniert Gitter-basierte Drucklösung (Eulerian) mit partikel-basiertem Advektions-Schritt (Lagrangian). Standard in Houdini. Vorteile: keine numerische Diffusion, sehr detaillierte Tropfenbildung. Nachteil: teuer bei sehr feinen Details.
SPH (Smoothed Particle Hydrodynamics): Rein partikelbasiert; jeder Partikel repräsentiert einen Flüssigkeitsklumpen. Vorteile: natürliche Trennung, Spritzer. Nachteil: Inkompressibilität schwer zu erzwingen, Rauschen.
MPM (Material Point Method): Hybrid aus Gitter und Partikeln; eignet sich besonders für viskoelastische Materialien (Schlamm, Lava, Schnee). Pixar Aqua (Cars 2 Ozean), Disney Research (Moana Ocean).
Eulerian Grid (Pure Grid): Feuer, Rauch und dünne Schichten; Wasser wird auf einem fixen Voxel-Grid gespeichert. Keine Partikel – stabil, aber numerische Diffusion glättet kleine Details.
Houdini FLIP-Solver Parameter
| Parameter | Beschreibung | Typischer Wert |
|---|---|---|
| Particle Separation | Abstand zwischen FLIP-Partikeln | 0,02–0,1 m |
| Substeps | Stabilitätsschritte pro Frame | 2–8 |
| Viscosity | Viskosität (1 = Wasser, 1.000 = Öl) | 1–5.000 |
| Surface Tension | Oberflächenspannung | 0–0,05 |
| Reseeding | Partikel-Neuerstellung in leeren Zellen | aktiviert |
| Narrow Band | Nur FLIP-Partikel nahe der Oberfläche | drastisch Leistungsverbesserung |
Surface Reconstruction
FLIP-Partikel erzeugen eine Punktwolke, keine sichtbare Oberfläche. Für das Rendering wird ein Mesh via Marching Cubes oder Particle Fluid Surface-Node aus den Partikeln extrahiert. Anschließend Glättung (Laplacian Smooth) und Detail-Rückzufügen (Wave/Displacement Procedurals).
Foam, Whitecaps und Spray
Ozeaneffekte kombinieren FLIP-Fluid mit sekundären Partikel-Systemen:
- Foam: Partikel an der Wasseroberfläche, die bei Verwirbelung entstehen
- Spray: Ausgerissene Tröpfchen in der Luft (als POPs simuliert)
- Bubble: Unterwasser-Luftblasen (invers simuliert)
Beispiele
- Titanic (James Cameron, 1997) – Frühe CG-Wasser-Simulation durch Digital Domain; Hybridansatz aus physischen Modellen und CGI-Wasser.
- Pirates of the Caribbean: Fluch der Karibik (Gore Verbinski, 2003) – Davy Jones' Flying Dutchman aus dem Meer auftauchend; ILM-Wasser-Simulation.
- Moana (John Musker & Ron Clements, 2016) – Disney Research's hybrides Wasser-Simulation-System (APIC – Affine Particle-in-Cell); Oscar-Gewinner; 200 Mio. Partikel für Ozean-Szenen.
- Life of Pi (Ang Lee, 2012) – CGI-Ozean; Rhythmik & Hues; kombinierte spektrale Ozean-Simulation (JONSWAP-Spektrum) mit FLIP-Nahaufnahmen.
- Dunkirk (Christopher Nolan, 2017) – Bootssinkszenen; Kombination aus praktischen Effekten und CG-Wasserergänzungen.
Schritt-für-Schritt Workflow
- Szene skalieren: Houdini-Szene in Metern; Standard-Gravitation (-9,81 m/s²) prüfen. Falscher Maßstab führt zu kaputter Physik.
- Emitter definieren: Geometrie als Fluid-Quelle (Initial Volume); Velocity-Attribute an den Quelloberflächen setzen.
- FLIP-Solver aufsetzen: Container-Größe und Auflösung (voxelSize) festlegen; größerer Container = höhere RAM-Nutzung.
- Kollisionsgeometrie: Alle relevanten Objekte (Boot, Felsen) als Static Objects in die Simulation einbinden; Penetrations-Checks aktivieren.
- Simulation starten: Ersten Frame cachen; Simulation beobachten; Parameter (Substeps, Particle Separation) anpassen.
- Cache: Vollständige Simulation als
.bgeo.scoder.vdbauf Fast-Storage cachen; RAM-Bedarf für große Sims: 64–256 GB. - Surface Extraction: Marching-Cubes-Mesh aus FLIP-Cache; Glättung; Foam/Spray als separate Partikel-Cache.
- Shading: Shader für transparentes Wasser (Refraction/SSS für Milchigkeitseffekte); Foam als weißes Sprite-Billboard.
- Rendern: Mehrere Passes (Beauty, Foam, Spray, Volume für Mist); in Nuke zusammenführen.
In der Praxis
Houdini (SideFX): FLIP-Solver ist der Industriestandard; vollständige Kontrolle über Physik; Python/VEX-Scripting für individuelle Solver-Eingriffe. Wird von Weta Digital, ILM, DNEG und nahezu allen großen VFX-Studios verwendet.
Bifrost (Autodesk / Maya): Vollständig in Maya integrierter FLIP-basierter Solver; gut für Studios mit Maya-zentrierter Pipeline; wurde für Avengers-Aquaman-Produktionen genutzt.
Phoenix FD (Chaos Group): Plugin für Maya und 3ds Max; benutzerfreundlich; gut für Architektur-Viz und Broadcast-VFX.
Blender Mantaflow: Open-Source-FLIP-Solver in Blender 2.82+; für Indie ausreichend; keine Narrow-Band-Optimierung → langsamer als Houdini.
RealFlow (Next Limit Technologies): Eigenständige Fluid-Simulation-Software; Plugins für Maya, 3ds Max, Cinema 4D; gut für Studio-Pipelines ohne Houdini.
Vergleich & Abgrenzung
| Methode | Detail | Kontrolle | Geschwindigkeit |
|---|---|---|---|
| FLIP (Houdini) | sehr hoch | sehr hoch | langsam |
| SPH | mittel-hoch | mittel | mittel |
| Spectral Ocean (Tessendorf) | hoch (groß) | hoch | schnell |
| Real-time (GPU) | mittel | gering | Echtzeit |
| Grid-basiert (Pyro-artiger Ansatz) | mittel | hoch | mittel |
Häufige Fragen (FAQ)
Was ist der Unterschied zwischen FLIP und SPH? Beide simulieren Flüssigkeiten über Partikel, aber mit unterschiedlichem Ansatz: FLIP (Fluid Implicit Particle) nutzt ein Eulerian-Grid für den Drucklösungsschritt, was Inkompressibilität (keine Kompression von Wasser) garantiert – das Ergebnis ist stabiler und weniger rauschig. SPH (Smoothed Particle Hydrodynamics) ist rein partikelbasiert und approximiert Inkompressibilität durch ein Dichte-Penalty; das Resultat neigt zu leichtem Aufblähen und Rauschen, aber SPH erlaubt einfacher extreme Deformation und Tropfentrennung.
Wie groß ist ein typischer Fluid-Cache für einen VFX-Shot? Für einen 5-Sekunden-Ozean-Shot in Houdini-FLIP mit mittlerer Auflösung: 100–500 GB. Bei hochauflösendem Nahaufnahmen-Wasser (Particle Separation 0,02 m in einem 5 m³ Container) können 1–5 TB pro Shot anfallen. Hieraus ergibt sich der hohe Storage-Bedarf von VFX-Studios (Petabyte-Bereiche).
Verwandte Einträge
- Partikel-Simulation (Feuer, Rauch, Staub)
- Crowd-Simulation – Massen in VFX
- Render Farm – verteiltes Rendering
Weiterführend
- Bridson, R. (2015). Fluid Simulation for Computer Graphics (2. Aufl.). CRC Press.
- SideFX. (2023). Houdini FLIP Fluids Documentation.
- Jiang, C. et al. (2015). The Affine Particle-in-Cell Method. SIGGRAPH 2015, ACM Trans. Graph.
- Tessendorf, J. (2001). Simulating Ocean Water. SIGGRAPH Course Notes.
