Blender Dokumentation: Soft Bodies: Einfache Beispiele
Diese Seite bezieht sich auf Blender v2.48a |
Bevor komplexere Softbody Setups gezeigt werden, fangen wir mit einigen einfachen Beispielen an: Ein Gummiball, ein Tuch und eine sich im Wind bewegende Fahne. Trotz relativer Einfachheit der Beispiele gehe ich davon aus, dass Sie sich mit Blender bereits recht gut auskennen.
Gummiball Softbody
[Bearbeiten]- Wir benötigen eine Ebene und eine IcoSphere mit einer Subdivision von 2.
- Die IcoSphere wird zu einem Ball, wenn Sie noch einen SubSurf-Modifier Level 2 hinzufügen. Aktivieren Sie Set Smooth.
- Skalieren Sie die Ebene ein bisschen größer, damit sie größer als der Ball ist.
- Positionieren Sie den Ball so, dass sich sein Zentrum 4 Einheiten über der Ebene befindet.
Ihr Setup sollte nun so aussehen wie in Abbildung 1.
Beachten Sie bitte drei Punkte:
- Die Flächennormale der Ebene muss in die Richtung zeigen, in die der Ball reflektiert werden soll.
- Ebene und Ball müssen mindestens einen Layer gemeinsam haben.
- Der Ball fällt in negative Z-Richtung, ordnen Sie die Objekt bitte richtig an, also auf der Z-Achse übereinander.
- Wählen Sie die Sphere aus und wechseln in den Object Kontext (F7), dort in die Physics-Buttons (noch mal F7) . Klicken Sie auf Soft Body im Softbody Panel.
Für einen Gummiball müssen wir einige wenige Einstellungen vornehmen.
- Schalten Sie als erstes Use Goal aus.
- Erhöhen Sie die Bending Stiffness (BE) auf 1.0, sonst fällt der Ball in sich zusammen.
- Erhöhen Sie Push und Pull jeweils auf 0.8 (Abbildung 2). Wenn Sie diese Werte verkleinern, wird das Material des Balls einem Wackelpudding ähnlicher.
Jetzt müssen wir den Ball nur noch von der Ebene abprallen lassen.
- Wählen Sie die Ebene aus und wechseln Sie auf das Collision Panel. Stellen Sie Collision an (Abbildung 3).
- Jetzt bewegen Sie den Mauszeiger in das 3D-Fenster und drücken Alt-A.
Der Ball wird herunterfallen, von der Ebene abprallen, wieder runterfallen ... und schließlich zum Stillstand kommen.
Tuch Softbody
[Bearbeiten]Dieses Beispiel ist nur ein bißchen komplexer als das erste.
- Erstellen Sie eine Plane und skalieren Sie diese etwas größer (etwa verdoppeln). Benutzen Sie im Edit-Modus dreimal Subdivide. Verwenden Sie dann einen Subsurf-Modifier auf Level 2 und aktivieren Sie Set Smooth. Subsurf ist nur für die Optik, nur das echte Unterteilen der Ebene erzeugt die nötigen neuen Vertices.
Mit einer Vertexgruppe (Goalgroup [Zielgruppe]) lässt sich einstellen, welche Vertices wie stark an ihrer ursprünglichen Position festhalten. Haben Sie ein Weight von 0, halten sie gar nicht an ihrer ursprünglichen Position fest, und werden vollständig von der Softbody-Berechnung beeinflusst. Vertices mit einem Weight von 1 dagegen reagieren überhaupt nicht auf die Softbody-Berechnung.
- Erstellen Sie eine neue Vertexgruppe, nennen Sie diese Group GoalGroup. Deren Weight stellen Sie auf 0.0. Wählen Sie alle Vertices der Plane aus, und drücken Assign. Der Weight Parameter liefert bei Softbodys ja das Goal, damit reagiert nun die gesamte Plane vollständig als Softbody. Einen Vertex werden wir an seinem Platz festhalten. Dazu wählen Sie einen Vertex aus, stellen Weight auf 1.0, und drücken wieder Assign (oder verwenden Sie WeightPainting).
- Nun stellen Sie Softbody für die Ebene an.
- Lassen Sie Use Goal angeschaltet. Mit dem Auswahlbutton neben dem Feld Use Goal wählen Sie den Namen der gerade erstellen Vertexgruppe aus.
- Erhöhen Sie Be auf 0.1 und Push/Pull je auf 0.7, damit das Tuch nicht durchhängt und einen gewissen Selbsthalt hat.
- Mit dem Parameter Aero lassen Sie das Tuch den Luftwiderstand spüren. Stellen Sie Aero auf 170.
- Zum Schluss stellen Sie SelfCollision an, damit das Tuch nicht in sich selbst zusammenfällt.
Wenn Sie nun im 3D-Fenster Alt-A drücken, sehen Sie, wie das Tuch auf die Schwerkraft reagiert (in Z-Richtung). Mit Push/Pull und Be können sie die Elastizität des Materials ändern, kleinere Werte lassen das Tuch beinahe beliebig weit durchhängen, bei großen Werten wird das Tuch fast gar nicht gestreckt.
Eine sich im Wind bewegende Fahne
[Bearbeiten]Wind gibt's nicht mehr - nur Sturm
Leider funktioniert das Beispiel in 2.48 nicht mehr wie beschrieben, weil Windkraftfelder ungleich viel stärker blasen als in vorhergehenden Versionen. Wind auf 0.004 und Friction auf 0.02 erzeugen etwa den gewünschten Effekt. Erfreulicherweise ist das Problem in der Entwicklerversion bereits wieder behoben, so dass das Beispiel mit Version 2.49 wieder funktionieren sollte.
Erzeugen Sie in Frontansicht (Num-1) eine Plane und subdividen Sie vier Mal. Wechseln Sie mit F9 in die Edit buttons und fügen einen Subsurf-Modifier mit einem Level von 3 hinzu (für die Optik). Aktivieren Sie AutoSmooth und Set Smooth.
Diesmal werden wir zwei virtuelle Pins in unserer Ebene befestigen.
- Erzeugen Sie eine neue Vertexgruppe und setzen Weight auf 0. Wählen Sie alle Vertices aus und drücken Assign.
- Nun wählen Sie die untere und die obere Ecke einer Seite unserer zukünftigen Fahne, setzen Weight auf 1.0 und drücken wieder Assign. Mit Tab->Strg-Tab gelangen Sie in den Weight Paint Mode. Dort sollte die Fahne so aussehen wie in Abbildung 7.
- Wechseln Sie nun zum Softbody Panel im Object->Physics buttons Kontext (F7-F7).
- Stellen Sie Soft Body an.
- Lassen Sie Use Goal angeschaltet. Mit dem Menübutton neben Use Goal wählen Sie den Namen der gerade erstellen Vertexgruppe aus (wenn Sie ihn nicht geändert haben, lautet der einfach "Group"). Diese Schritte sind genauso wie im Beispiel mit dem Tuch. Nun hängt das Tuch an zwei Punkten fest.
- Einige weitere Einstellungen: E Stiff auf 0.5 und Mass auf 0.5. Rigidity auf 0.01. Das Tuch hat einen leichten Selbsthalt. Aero auf 330. Aero benötigen wir, damit das Tuch auf Wind reagieren kann.
Diese Parameter sind ziemlich willkürlich, spielen Sie ein bißchen herum, bis die Animation so aussieht, wie Sie sie haben wollen.
- Stellen Sie SelfCollision an.
Das Tuch zittert jetzt etwas herum.
- Mit ErrorLim auf 0.001 bekommen wir das Zittern gut weg.
- Drücken Sie Alt-A, um zu sehen wie die Flagge auf die Schwerkraft reagiert.
Es fehlt noch der Wind.
- Fügen Sie ein Empty hinzu. Dieses Empty wird die Windquelle sein. Wechseln Sie auf das Particle Interaction Panel, und wählen Sie unter Fields Wind aus. Setzen Sie die Strength des Windes auf 1. Rotieren und bewegen sie das Emtpy, so dass seine Z-Achse auf die Fahne zeigt (Abbildung 9).
Effekt kurzzeitig erhöhen
Sie können die Stärke des Windes kurzfristig erhöhen, um den Effekt besser beurteilen zu können.
Alt-A zeigt wie immer den Effekt des Windes an.
Mit einer IPO Kurve können wechselnde Windstärken simuliert werden, um die Animation realistischer aussehen zu lassen. Ein Beispiel finden Sie in Abbildung 10.
Um IPO-Punkte hinzuzufügen, wählen Sie den Parameter FStrength im IPO-Fenster aus, und mit Strg-LMT Klick werden die Punkte hinzugefügt.