Wavelet Turbulence
# Wavelet Turbulence

Wavelet Turbulence for Fluid Simulation ist ein quelloffener Algorithmus, mit welchem sich Explosions- und Flüssigkeitssimulationen, nachdem sie vom Simulationswerkzeug errechnet wurden, heterogener und detailreicher gestalten lassen. Er ist als autarke Software verfügbar, in anderen Programmen (z. B. Blender) enthalten und wurde als wissenschaftliche Publikation veröffentlicht.

## Funktionalität

Neben der Auflösung, welche durch die Bearbeitung erhöht wird, lässt sich die Heterogenität der Simulation beeinflussen.

Simulationen mit Wavelet Turbulence nachzubearbeiten hat gegenüber der unmittelbar detaillierten Berechnung des Ablaufes einer Simulation die Vorteile, dass sich der approximative Ablauf einer Simulation mit hoher Geschwindigkeit errechnen lässt, wodurch sich bei der Erstellung von CGI-Effekten einschätzen lässt, ob die Simulation mit der Szenerie, in welche sie eingefügt werden soll, harmoniert, dass der Algorithmus Details schneller errechnet und dass er es ermöglicht, verschiedene Stellen der Simulation unterschiedlich detailreich zu berechnen.

## Funktionsweise

Der Algorithmus ermittelt die UV-Koordinaten der Rohversion der Simulation weisungsfrei und verformt diese auf Basis zweier Texturen, welche er generiert.

Im ersten Schritt werden der Simulation Details, deren räumliche Auflösung gering ist, beigefügt. Dazu wird der Algorithmus Wavelet Noise genutzt. Der Textur werden spiralförmigen Ströme beigefügt, welche einzelne Punkte hervorheben. Diese haben die Gestalt der Wolkenformation eines Tiefdruckgebietes.

Details mit großer räumlicher Auflösung werden mit einer Methode, welche dem Algorithmus Anisotropic Noise entstammt, errechnet. Im Gegensatz zu diesem errechnet Wavelet Turbulence ihre Position auf Basis der räumlich gering aufgelösten Ströme.

Mit Hilfe seiner Funktionalmatrix kann der Algorithmus mehrere Ströme verbinden.

Seine Pipeline ist folgendermaßen aufgebaut:

## Geschichte

Der technologische Ansatz zur Verbesserung von Computersimulationen durch Wavelet-Transformationen entstammt Jos Stams 1999 erschienenen Buch Simulating the Effects of Turbulence on Flexible Structures. Wavelet Turbulence kommt dem Algorithmus Anisotropic Noise, der es ermöglicht, Simulationen grobkörnige Details beizufügen, nahe. Dieser ist im eigenständigen Wavelet Turbulence Programm sowie in der Implementation dieses in Blender integriert.

Die ETH-Zürich entschied sich dazu, den Artikel unter der GNU Public License zu veröffentlichen, da Lizenzgebühren die Verbreitung des Algorithmus verlangsamt hätten und weil sie eine Patentierung mit einer Gültigkeit von 30 Monaten 25'000 Euro gekostet hätte. Laut Markus Gross könne sich eine Universität wie die ETH dies nur leisten, wenn die Aussicht auf Erfolg außerordentlich hoch sei. Nachdem sich Wavelet Turbulence zum Branchen-Standard entwickelt hatte, kritisierten die Entwickler, dass die Nutzung des Algorithmus von den Studios nur rar bezeichnet würde. In vielen Filmen solle eine Erwähnung der Nutzung im Abspann gefehlt haben. Obwohl die GPL dies erlaubt, wird die Praxis von verschiedenen Seiten als fragwürdig angesehen. Der Entwickler Nils Thürey kommentierte dies im Spiegel: „Wir haben unterschätzt, wie nützlich dieses Werkzeug sein würde.“

### Nutzung in Film-Projekten

Der Algorithmus wurde unter anderem zur Realisierung folgender Projekte genutzt:

2009:

* Avatar
* Monsters vs. Aliens
* Sherlock Holmes
* Transformers – Die Rache
* G.I. Joe – Geheimauftrag Cobra

2010:

* Das A-Team – Der Film
* Alice im Wunderland
* Drachenzähmen leicht gemacht
* Die Legende der Wächter
* Megamind
* Für immer Shrek
* The Wolfman

2011:

* Green Latern
* Super 8
* Kung Fu Panda 2
* Der gestiefelte Kater (2011)
* Die Reise zur geheimnisvollen Insel
* Sucker Punch
* Thor
* Hugo Cabret

2012:

* Battleship
* Madagascar 3
* Red Tails
* The Amazing Spider-Man

2013:

* Iron Man 3
* Man of Steel
* Schiffsbruch mit Tiger

## Auszeichnungen

Nachdem Wavelet Turbulence in vielen Produktionen von Hollywood-Studios eingesetzt wurde, wurden die Entwickler im Jahre 2013 mit dem Technical Achievement Award der Academy of Motion Picture Arts and Sciences für den Algorithmus ausgezeichnet.

