Cloth Simulation: Faltenwurf für weichfließende Stoffe
Die Simulation weichfließender Stoffe von Hand ist ein aufwendiges und hinsichtlich der Ergebnisse
mitunter auch nicht zufriedenstellendes Unterfangen. Blender bietet mit der Cloth Simulation
(Stoffsimulation) hierfür aber eine Art "Tiefziehverfahren" an, das sich der Physics Engine bedient
und mit der man recht realitätsnahe Faltenwürfe erzielen kann. Nachfolgend als Einstieg das Beispiel eines Stoffes, der
als Tischtuch Verwendung finden soll.
Vorbereiten der Kollisionsobjekte
- Gearbeitet wird im Workspace "Layout", Ansichtsmodus "Material Preview". Unter dem 3D Viewport muss das Fenster mit der
Timeline aufgezogen sein. Wichtig: Der Timeline-Schieber muss auf Anfang (Frame 0) stehen.
- Ein Mesh als Kollisionsobjekt hinzufügen oder ein vorhandenes Mesh nutzen. Bei gerundeten Objekten empfiehlt sich Shading: Smooth.
- Zentrieren des Kollisionsobjekts auf dem Achsen-Schnittpunkt: Erst den Cursor auf den World-Mittelpunkt setzen
(SHIFT + S + 1),
dann SHIFT + S + 8 für das Verschieben des ausgewählten Objekts
zur Cursorposition. Man kann aber natürlich auch das Tortenmenü benutzen, welches man mit
SHIFT + S öffnen kann.
- Optional einen Boden (Plane) hinzufügen, sofern der Stoff z.B. eine bodenlange Tischdecke oder einen
Sofaüberwurf darstellen soll. Der Boden sollte sich unterhalb des Kollisionsobjekts befinden und größer sein als dieses.
- Bei Kollisionsobjekt und Boden sollte Object/Apply/All Transformations durchgeführt werden.
- Im Properties Window den Physics Properties-Kontext öffnen (blaues Logo mit Planeten-Umlaufbahn).
- Nacheinander für Kollisionsobjekt und Boden Enable Physics for: Collision auswählen. Weitere Einstellungen sind
hier nicht notwendig.
Vorbereiten des Stoffs
- Für die Stoffsimulation eine weitere Plane hinzufügen. Mit NumPad 7 in die Vertikalansicht gehen und im
Wireframe-Modus den Stoff so skalieren, dass er etwas größer als das Kollisionsobjekt ist und einen schönen Überhang mit
Faltenwurf verspricht.
- Platzieren des Stoffs maximal einen Meter oberhalb des Kollisionsobjekts. Eventuell ist das sogar schon zu viel, denn
aus zu großer Höhe kann der Stoff mit zu viel Schwung auftreffen und schlimmstenfalls trotz penibler Zentrierung vorab
vom Kollisionsobjekt rutschen.
- Nur wenn man ausreichend Vertices spendiert, bekommt man auch ein weich verformbares Mesh. Deshalb in den
Edit Mode wechseln und die Stoff-Plane mit Subdivide 7-8mal unterteilen.
Diese Funktion findet sich leider nicht mehr links im Tool Shelf, sondern ist entweder über den Menüpunkt Edge oder
über das Kontextmenü erreichbar.
- In den Object Mode wechseln und Object/Apply/All Transformations
durchführen.
- im Object-Menü oder über das Kontextmenü Shade Smooth aktivieren. So fällt der Stoff nachher nicht
"blockig".
- Für den Stoff ebenfalls in den Physics Properties-Kontext gehen, dort aber Cloth
auswählen. Stllschweigend wird nun im Modifier-Kontext ein Cloth Modifier hinzugefügt.
- Drückt man auf die drei waagerechten Linien, öffnet sich ein Auswahlmenü für verschiedene Material-Presets. Man kann
es erst einmal mit Rubber (Gummi) versuchen. Zu dünne Stoffe wie z.B. Cotton (Baumwolle) können möglicherweise eine
schlechtere Geometrie bewirken.
- Für den Stoff Quality von 7 auf 10, Vertex Mass erhöhen auf 8 kg. Hier ggf. etwas ausprobieren.
- Weiter unten auf den Abschnitt Collision scrollen. Die Quality dort bei 2 belassen, damit die Simulation
nicht zu langsam gerät.
- Das Kästchen Self Collision bewirkt, dass auch aufeinandertreffenden Teile des Stoffes selbst den Faltenwurf
beeinflussen. Man kann damit ein noch etwas realistisches Ergebnis erzielen, so dass diese Option immer aktiviert sein sollte.
Durchführen der Simulation
Die Einzelphasen (Frames) der Simulation werden von Blender berechnet und in einem Arbeitsspeicher (Cache)
abgelegt. Dies ermöglicht später, auf beliebige Einzelphasen zuzugreifen. Es gibt zwei Möglichkeiten, diese Berechnung -
das Bake - durchführen zu lassen: das "sichtbare" Bake mit Start und Darstellung im 3D Viewport und das
"unsichtbare" Bake über den Tab "Cache" im Physics Properties-Kontext.
Möglichkeit 1: Das "sichtbare" Bake
- In der Timeline sind 250 Frames als Standardwert eingetragen. Diese Anzahl der Frames kann ggf. etwas reduziert werden.
- In den Object Mode wechseln und in der Timeline den Play-Button drücken.
- Der Stoff fällt in Richtung der Kollisionsobjekte und legt sich je nach Materialeinstellungen mehr oder weniger weich
über sie. Der erste Durchlauf ist noch langsam, da hier die Berechnung der Frames stattfindet. Alle weiteren Durchläufe erfolgen
in Echtzeit durch Wiedergabe der Frames im Cache. Auf dem Tab Cache scheint sich erst einmal nichts zu, aber hält
man nach dem ersten Durchlauf die Simulation an, wird die Anzahl der Frames im Cache angezeigt.
Möglichkeit 2: Das "unsichtbare" Bake
Vorteil dieser Methode ist, dass das Bake schneller vonstatten geht, da eine gleichzeitige Darstellung der Simulation entfällt.
Dies kann bei noch komplexeren Simulationen entscheidend sein. Durch Drücken der Taste Bake wird die Berechnung der
Frames ausgeführt, ohne dass die Simulation dazu im 3D-Ansichtsfenster zu sehen ist. Man kann hier aber direkt auf dem Tab
Cache mitverfolgen, wie sich der Speicher Frame für Frame füllt. Nachteil dieser Methode ist aber, dass man so nicht
sogleich kontrollieren kann, ob sich die Simulation wie erwartet verhält. Im gegebenen Zusammenhang ist deshalb Möglichkeit 1
vorzuziehen.
Für beide Möglichkeiten gilt:
- Idealerweise liegt der Stoff am Ende der Simulation ruhig auf dem Kollisionsobjekt. Eine spätere Auswahl eines zufälligen
Frames mittendrin, der einem gefällt, kann dann entfallen.
- Gefällt einem der Stoff am Ende der Simulation noch nicht, kann man mit einigen Einstellungen im Physics Properties-Kontext
noch etwas nachhelfen. So kann man bei Stiffness das Bending auf 10.000 herabsetzen, was einen feineren Faltenwurf bewirkt.
Jede Änderung an diesen Werten macht aber auch einen erneuten Bake der Simulation notwendig (Neustart über die
Timeline bzw. Drücken der Taste Bake).
Fixieren für die Weiterverarbeitung
Um den am besten gelungenen Frame als Ergebnis der Simulation für die weitere Bearbeitung "einzufrieren", werden drei
Modifier verwendet. Dabei ist zu beachten, dass diese in einer speziellen Reihenfolge im Modifier-Kontext (blaues
Schraubenschlüssel-Icon) liegen und nacheinander abgearbeitet werden müssen:
- Cloth Modifier (bereits automatisch angelegt worden)
- Solidify Modifier, um dem Stoff Volumen zu verleihen
- Subdivision Surface, um dem Stoff nötigenfalls noch weicher fließend zu machen
- Die Simulation sollte auf dem Frame stehen, welcher nun fixiert werden soll. Nach Hinzufügen der Modifer sollte die
Simulation nicht wieder zum Laufen gebracht werden!
- Im Modifier-Kontext über die Auswahloption "Add Modifier" einen Solidify-Modifier hinzufügen. Alle Einstellungen auf den
Standardwerten belassen.
- Abschließend noch den Subdivision Surface-Modifier hinzufügen. Auch hier die Standardwerte belassen.
Bitte beachten:
- Die Simulation sollte auf dem Frame stehen, welcher nun fixiert werden soll.
- Nach Hinzufügen der Modifer sollte die Simulation nicht wieder zum Laufen gebracht werden!
- Ein Hin- und Herwechseln zwischen Object Mode und Edit Mode sollte vor Anwendung der Modifier unterbleiben!
- Die Reihenfolge bei der nachfolgenden Anwendung der Modifier muss unbedingt eingehalten werden, andernfalls kommt es
zu unerwarteten Ergebnissen.
Nacheinander erfolgt das Anwenden (Apply) der Modifier. Die Möglichkeit zum Anwenden ist in Blender 2.9x etwas
versteckt in einem Auswahlmenü, welches sich in der Namenszeile des Modifiers rechts neben den Icons befindet. Alternativ kann
die Tastenkombination Strg + A verwendet werden, wenn man sich direkt im Modifier-Tab
befindet.
- Den Anfang macht der Cloth-Modifier, durch dessen Anwendung das Mesh in der aktuellen Lage fixiert wird.
- Es folgt der Subdivision Surface Modifier.
- Den Abschluss macht der Solidify Modifier.
Der Stoff ist nun bereit für die weitere Verarbeitung:
- Weiterhin im Object Mode, wird dem Stoff mittels der Taste New ein
neues Material zugeordnet und sinnvoll benannt.
- Den Objektmittelpunkt korrigieren mit Object/Set Origin/Origin to Geometry.
- Abschließend Object/Apply/All Transformations anwenden.
Externe Links