blender sim strings
Das Ergebnis des Workshops ist ein Update für unser Partikelsysem, damit wir daraus mit einem Klick Fäden machen können.
Featured

Ein Upgrade für unser Partikelsystem. Wir verlegen Schläuche- Artikel in Digital Production 2401

In Ausgabe 23:04/05 haben wir gelernt, wie wir mit den neuen Simulation Nodes in Blender 3.6 ein Partikelsystem erzeugen können. In Blender 4.0 ist eine interessante neue Funktion hinzugekommen, mit der wir eine Reihe von Punkten über Kurven verbinden können. Das wäre doch ein schönes Feature-Upgrade für unseren Eigenbau. Zusätzlich kann Cycles jetzt Light Linking, womit wir den Aufbau perfekt in Szene setzen können.

Es gibt Features in Blender, auf die warten die Nutzer seit Jahrzehnten. Dazu gehörte bisher doch tatsächlich Light Linking, auch wenn das Nutzer anderer Programme kaum glauben mögen. Für Blendernutzer ist das allerdings wirklich ein neues Feature, das Cycles da bekommen hat. Ausprobieren wollen wir es zusammen mit dem Partikelsystem aus Simulation Nodes, welches wir in der Ausgabe 23:04/05 gebaut haben. Dieses erweitern wir aber vorher noch um ein anderes neues Feature von Blender 4.0, nämlich die Möglichkeit, Punkte mit Kurven zu verbinden. Das Ergebnis ziert das Cover dieser Ausgabe.

Nicht mehr ganz (so) dicht

Laden Sie sich zunächst das Ergebnis des Simulation Nodes-Workshops herunter und öffnen Sie die Datei. Wenn Sie die Animation mit der Leertaste starten, wird Ihnen auffallen, wie dicht die Partikel beieinander sind. Durch jeden dieser Partikel soll später ein Schlauch verlegt werden, was im Ergebnis nur ein Klumpen wäre bei dieser Menge. Reduzieren Sie daher zunächst die Density im Modifier Panel auf 100.

Die Saat muss weg

Die Partikel sind jetzt deutlich weniger dicht. Damit wir später Fäden daraus machen können, sollten sie aber nicht zufällig auf der Oberfläche des Objektes erscheinen, sondern immer an der gleichen Stelle. Dadurch können wir auch ohne die Konversion in Curves einen fadenähnlichen Look erzeugen. Begeben Sie sich in den Geometry Nodes-Workspace und stellen Sie sicher, dass im Geometry Node Editor der Nodetree “Fire Particle System” geöffnet ist. Suchen Sie dort unten links im Node Tree nach der Node “Distribute Points on Faces” und entfernen Sie die Verbindung im Seed-Socket. Wenn Sie nun die Animation abspielen, sehen die Partikel aus wie Perlenketten, die langsam zerfallen. Den Seed können Sie stattdessen nach außen führen als Parameter im Modifier Panel, indem Sie ihn in den leeren Socket der Group Input-Node ziehen.

Perlenkette- Indem wir den Seed aus der „Distribute Points on Faces“-Node nicht mehr in jedem Frame ändern, erhält unser Partikelsystem vom Aussehen her den Character von Perlenketten.

Punkte zu Kurven

Am anderen Ende des Node Trees fließen die erzeugten Punkte aus dem “Simulation Output” heraus. An dieser Stelle können wir sie zu Kurven konvertieren. Fügen Sie eine neue Node Points → Points to Curves hinzu und verbinden Sie sie mit dem Geometry-Ausgang der Simulation Output-Node und dem Geometry-Eingang der Group Output-Node. Jetzt erscheinen im Viewport Fäden statt Punkte. Die Set Material-Node belassen wir im Tree, wir können sie später noch gebrauchen, um die Partikel zusätzlich erscheinen zu lassen.

Kurven- Mit der Points to Curves-Node lassen sich die Partikel zu Curves verbinden. Dabei wird jeweils aus den Partikeln, die in einem Frame emittiert wurden, eine Curve.

Kurven zu Meshes

Die Kurven erscheinen jetzt zwar im Viewport, aber noch nicht im Render, da sie noch keine Oberfläche haben. Dafür sorgt die Node Curve → Operations → Curve to Mesh. Setzen Sie diese zwischen Points to Curves und Group Output. Nun ist aus der Kurve ein Mesh geworden, dieses besteht aber aus einzelnen Kanten. Für eine richtige Oberfläche benötigen wir noch eine weitere Kurve für das Profil. Klicken Sie auf den Profile Curve-Socket und ziehen Sie eine neue Verbindung heraus. Jetzt erscheint ein + beim Mauszeiger, wenn Sie loslassen, erscheint ein Suchfeld. Hier suchen Sie nach einem Kreis, es reicht, wenn Sie “ci” eingeben, dank Type Ahead Find erscheint bereits im zweiten Feld Curve Circle → Curve, welches Sie auswählen. Nun erscheint eine neue Node, die einen Kreis erzeugt, der dann als Profil für die aus den Partikeln erzeugten Curves fungiert.

Resolution

Im Viewport ist jetzt einiges los, da plötzlich Unmengen an Geometrie dargestellt werden wollen. Sie können dem etwas Einhalt gebieten, indem Sie die Resolution in der Curve Circle-Node auf acht reduzieren. Aber vielleicht wollen Sie die Auflösung beim Experimentieren noch etwas weiter reduzieren und beim finalen Rendern dann wieder erhöhen? Dafür jedes Mal in den Geometry Nodes-Workspace zu wechseln und die richtige Node im Node Editor zu suchen, ist dann vielleicht nicht der geschickteste Weg. Daher bietet sich es sich an, auch diesen Parameter nach außen ins Modifier-UI zu holen. Ziehen Sie wie gerade eben eine neue Nodeverbindung heraus und suchen Sie nach Group Input. Es erscheint eine Group Input-Node, bei der alle Sockets bis auf die neu erzeugte Resolution ausgeblendet sind. Das Interface von Blender steckt voller kleiner Überraschungen, die einem den Arbeitsalltag erleichtern.

cycles simulation nodes
Resolution- Mit der Curve Circle-Node erzeugen wir eine Hülle für unsere Kurven. Deren Auflösung holen wir nach außen ins Modifier-UI rechts im Bild.

Node Group Assets

Die Kurven sind aktuell an jedem Partikel äußerst spitz, was sich negativ auf das Shading auswirkt und möglicherweise nicht für jedermann der gewünschte Stil ist. Wir brauchen etwas, das sie abrundet wie der Subsurf Modifier bei Meshes. Ein solches Werkzeug wird in Blender inzwischen als Node Group Asset mitgeliefert bei den neuen Haar-Assets. Wir machen uns dabei zu Nutze, dass Haare und Kurven in Blender fast das gleiche sind, die entsprechenden Assets arbeiten eigentlich alle auf Kurven. Wir können sie also auch mit unserem Setup verwenden. Fügen Sie eine Node Hair → Deformation → Smooth Hair Curves hinzu und platzieren Sie sie zwischen Points to Curve und Curve to Mesh.

Die Wilden Kurven

Das Ergebnis dürfte ziemlich wild aussehen, keine der Kurven ist mehr an ihrem Platz. Das liegt an der Einstellung Preserve Length. Schalten Sie diese aus und unsere Fäden sind alle wieder an der richtigen Stelle, allerdings leicht abgerundet. Wie stark der Effekt sein soll. können Sie über die Iterations bestimmen, für unser Cover hat eine gereicht, je mehr Sie verwenden, desto stärker werden die Kurven abgerundet.

Die Partikel zurückholen

Da wir für die Fäden sowieso schon die Bewegungen eines Partikelsystems simulieren, können wir sie gleich mitverwenden, indem wir sie wieder als Punkte darstellen. Für diesen Zweck haben wir die Set Material-Node weiter vorne im Artikel nicht gelöscht, sondern lediglich abgetrennt. Fügen Sie eine Node Geometry → Join Geometry hinzu zwischen Curve to Mesh und Group Output. Verbinden Sie den Ausgang der Set Material-Node ebenfalls mit der Join Geometry-Node. Nun erscheinen die Partikel als Punktobjekte im Viewport, im Render Preview sollten sie auch schon das passende Material haben.

cycles simulation nodes
Particles- Über Smooth Hair Curves können wir die Fäden etwas abrunden und erhalten ein deutlich weicheres Shading. Über Join Geometry können wir die Partikel wieder mit reinmischen.

Schläuche aus Stahl

Um den Fäden ebenfalls ein Material zu geben, fügen Sie dem Objekt Particle Nodes Container einen weiteren Material Slot hinzu und erstellen Sie dort ein neues Material mit Metallic auf 1.0. Damit es auch auf den Schläuchen erscheint, muss es aber zunächst noch in den Geometry Nodes zugewiesen werden. Duplizieren Sie die Set Material-Node und platzieren Sie sie zwischen Curve to Mesh und Join Geometry. Die Fäden sollten jetzt wieder sehr dunkel wirken. Das liegt an einer Besonderheit der Ausgangsdatei. Die World ist in dieser Datei für Glossy-Shader unsichtbar, was einen interessanten Effekt ergibt, da die Punkte in ihrem Shader einen diffusen Anteil haben und dadurch wirken, als würden sie selbst leuchten, allerdings nicht so gleichmäßig, wie es bei Emission ohne Tricks der Fall wäre.

cycles simulation nodes
Stahlrohre- Das Material für die Fäden muss in den Geometry Nodes gesetzt werden, für die Übersicht geben wir ihm einen eigenen Materialslot. Bei einem Material mit Metallic von 1.0 werden die Curves nicht mehr von der Umgebung beschienen, weil sie in unserer Startdatei für Glossy Shader ausgeschalten ist.

Light Linking

Die Tatsache, dass die Welt nicht in glänzend reflektierenden Oberflächen sichtbar ist, ist quasi schon eine einfache Version des Light Linking und war bei Cycles schon von Anfang an vorhanden. Diese ist aber shaderbasiert und daher sehr allgemein gehalten. In Blender 4.0 ist es jetzt erstmals möglich, den Einfluss von Lichtquellen auf Objekte in einer Collection zu beschränken. Und das möchten wir jetzt verwenden, um die Fäden von zwei Area Lights links und rechts zu beleuchten, und zwar nur Fäden, Partikel und Logo, nicht jedoch den Boden. Erzeugen Sie dafür eine neue Collection im Outliner und ziehen Sie das DP Logo und den Particle Nodes Container hinein.

cycles simulation nodes
Light Linking- Light Linking befindet sich etwas versteckt im Shading Panel in den Object Properties.

Orange and Teal

Erzeugen Sie dann eine weitere neue Collection und darin zwei Area Lights, deren Shape Sie in den Object Data Properties auf Rectangle stellen und Size X auf 3.0 stellen. Richten Sie die beiden Area Lights so aus, dass sie von links und rechts auf die Szene scheinen und geben Sie ihnen zwei konträre Farben, z.B. die berühmte Kombi aus Orange und Aquamarin. Die kalte Lichtquelle sollten Sie deutlich stärken einstellen als die warme, z.B. auf 200 Watt und 50 Watt.

Noch gut versteckt

Um die Beleuchtung der beiden Area Lights auf Logo, Partikel und Fäden zu beschränken, müssen Sie für beide in den Objekt Properties im Shading-Panel unter Light Linking die Collection auswählen, in der sich die drei Objekte befinden. Nun beleuchten Sie den Boden nicht mehr, wodurch die Aufmerksamkeit des Betrachters auf die Partikelaction gelenkt wird.

Fade-in auch für Fäden

Ein letztes Detail möchte ich Ihnen aber nicht vorenthalten. Die Partikel verblassen in unserer Beispieldatei, da wir im letzten Workshop unser Partikelsystem so gebaut haben, dass es für jeden Punkt sein Alter als Wert zwischen 0.0 und 1.0 speichert. Auf diese Werte können wir auch für die Fäden zugreifen. Sprich, auch die Curves lassen sich damit ein- und ausfaden.

Mit Bravur gemeistert

Begeben Sie sich in den Shading Workspace und wählen Sie das Objekt Particle Nodes Container an. Selektieren Sie in den Material Slots das Material Particles Fading Out und selektieren Sie im Shader Editor die drei verbundenen Nodes Attribute, Invert Color und Color Ramp. Kopieren Sie sie mittels Strg + C, dann wählen Sie das Material aus, das Sie den Fäden gegeben haben, oder drücken Sie dort im Shader Editor Strg + V. Damit haben Sie die Nodes kopiert, verbinden Sie noch den Ausgang der Color Ramp-Node mit dem Alpha-Socket der Principled BSDF. Nun erscheinen und verblassen auch die Curves und Sie haben den technischen Teil des Workshops mit Bravur gemeistert.

Austoben

Ab jetzt heißt es austoben. Für das Coverbild habe ich die Bewegungsrichtung der Partikel nach oben geändert. Sie können die Richtung in der Vector Add-Node in der Simulation Zone ebenfalls ändern. Und dann dieser Stelle auch gleich darüber nachdenken, wie man den Aufbau noch benutzerfreundlicher gestalten könnte. Zum Beispiel, indem man die Bewegungsrichtung ebenfalls exponiert. Oder gleich ein Hilfsobjekt hinzufügt, das die Richtung und “Windstärke” vorgibt?

cycles simulation nodes
Blender Summer School- Für diejenigen, die sich vor Ort mit Geometry und Simulation Nodes vertraut machen wollen, gibt es dieses Jahr eine Reihe von Workshops an der Blender Summer School, die vom 26. bis 28.07. in Mannheim stattfindet. Impressionen vom letzten Jahr und die Anmeldung für dieses Jahr finden Sie hier: blender3dschool.de/

Fazit und Ausblick

Blender 4.0 bringt einige neue Features mit, darunter das sehnlichst erwartete Light Linking und neue Geometry Nodes. In diesem Workshop wurde beides verknüpft. Es gibt aber noch Möglichkeiten, weiterzugehen. So werden die Fäden aktuell an jedem Frame wie Knäuel erzeugt, mit ein paar weiteren Nodes könnten die Fäden aber wie an einer Partikelschnur bzw. wie wachsende Haare dargestellt werden, quasi senkrecht zur aktuellen Richtung. Diese Methode eignet sich dann besonders gut für Motion Capture-Aufnahmen, denn dadurch kann quasi für jeden beliebigen Punkt auf einem Character ein Motion Path erzeugt werden. Diese Methode habe ich beim Udon-Asset für das RADiCAL-Blender-Addon verwendet. RADiCAL ist ein Service zum Extrahieren von Bewegungsdaten aus einfachen Videoaufnahmen bzw. Livestreams.

Dieser Artikel erschien im Magazin Digital Production, Ausgabe 2401.