Neu in Release 12 – Rigid Body Dynamics und Konnektoren

Autor: Andreas Asanger
In diesem Tutorial dreht sich im wahrsten Sinne des Wortes alles um die neuen Dynamics. Nicht nur Rigid Bodies (Feste Körper) und Konnektoren kommen zum Einsatz, auch MoGraph hilft uns bei der Modellierung der Szene.

Um den Workshop komplett durcharbeiten zu können, benötigt ihr CINEMA 4D in Release 12 in der Studio-Variante.
Damit wir uns ganz auf die Arbeit mit Dynamics und MoGraph konzentrieren können, findet ihr alle sonstigen Bestandteile der Szene in der Arbeitsdatei “PSD_C4D_R12_Dyn_RigidB_Konnektoren_Start.c4d”.

Ein dreiflügeliges Drehrad und ein Kugel-Objekt sollen dabei genügen; den Rest erledigen wir mit MoGraph-Klonen bzw. einem Partikelemitter.

Wir empfehlen:
Projektentwicklung mit CINEMA 4D

 

Aufbau der Szene mit MoGraph-Klonen

Die drei wichtigsten Objekte in unserer Szene sind die Kugel, das Drehrad und die schräge Ebene, auf der die Kugeln später nach unten rollen sollen. Mit Ausnahme der Flügel des Drehrades besitzen alle Objekte bereits ein Material. Wer möchte, kann die Szene mit anderen Materialien seinen eigenen Vorstellungen anpassen.

 

Für die Kugeln verwenden wir ein einfaches, parametrisches Kugel-Objekt, das später geklont wird. Der Radius von 7 cm passt zu unserem Drehrad und der Ebene, deren untere Kante die Kugeln später so gut es geht auffangen soll.

 

Das Drehrad entsteht durch Extrusion eines Blume-Spline-Objektes mit einem Extrude-NURBS-Generator. Für die drei Flügel des Drehrades wurde die Anzahl der Blätter entsprechend reduziert. Der innere Radius ist gerade so groß, dass die eingesteckte Achse (ein einfaches Zylinder-Objekt) ausreichend Platz findet.

Wer möchte, kann gerne auch mit vier oder sogar fünf Flügeln experimentieren.

 

Der Extrude-NURBS-Generator sorgt für die dreidimensionale Ausformung des vorgegebenen Blume-Spline-Objektes. Über den Verschiebungs-Parameter ist die Tiefe des Drehrades definiert.

 

Dem Drehrad übergeordnet ist das bereits erwähnte Zylinder-Objekt. Es wird später für Dynamics als Drehachse des Konnektors fungieren.

 

Kommen wir schließlich noch zur Ebene, die eigentlich auch ein Extrude-NURBS-Objekt ist, das einen vorgegebenen Spline-Pfad (in diesem Fall ein L-Spline) durch Extrusion in ein dreidimensionales Objekt verwandelt.

 

So weit zum Aufbau der Start-Szene. Wir fangen mit den Drehrädern an und verwenden dabei MoGraph, um genügend Kopien bzw. Klone für unsere Ebene zu bekommen.

Wir holen uns also ein Klon-Objekt aus dem Menü MoGraph.

 

Im Einstellungsdialog des Klon-Objektes setzen wir zunächst den Modus auf Gitter.

In den zugehörigen Parametern können wir jetzt die Anzahl der Klone und die Größe des resultierenden Gitters festlegen. Weil das Gitter aus einer Schicht in xRichtung bestehen soll, belassen wir diese Kopienzahl auf 1, in Y-Richtung fertigen wir 6 bzw. 5 Klone in den gezeigten Ausmaßen an.

 

Damit das Klon-Objekt auch weiß, welche Objekte es duplizieren soll, legen wir die komplette Hierarchie des Drehrades im Objekt-Manager als Unterobjekt in das Klon-Objekt hinein. Wie gewünscht produziert uns das Klon-Objekt die Drehräder in der gitterförmigen Anordnung.

 

Nun setzen wir die geklonten Drehräder auf die Ebene. Da der Rotationswinkel der Ebene 40° beträgt, übernehmen wir diesen Wert auch für das Klon-Objekt, hier als Banking-Winkel von – 40°.

 

Um das Klon-Gitter mit den Drehrädern exakt auf die Ebene zu setzen, wechseln wir am besten in die Seitenansicht, aktivieren die globale Achsausrichtung und verschieben die Drehräder entlang ihrer Achse nahe anliegend auf die Ebene. Weil die Achse der Drehräder etwas nach hinten heraussteht, kann sie problemlos in die Ebene eintauchen.

 

Die Drehräder wären damit installiert und können als Unterobjekt in die “Rutsche”-Gruppe zurückwandern. Was momentan noch ziemlich stört, ist die allzu perfekte, komplett gleiche Ausrichtung der Drehräder. Um diese Eintönigkeit zu beenden, integrieren wir einen Zufalls-Effektor.

 

Wir finden ihn im Menü MoGraph>Effektoren und holen ihn in unsere Szene. Wer vor dem Aufruf des Zufalls-Effektors das Klon-Objekt im Objekt-Manager selektiert, weist diesem Klon-Objekt automatisch den Effektor zu.

 

Im Einstellungsdialog des Zufalls-Effektors erledigen wir zunächst die zufälligen Rotationen der Drehräder. Dazu klappen wir das Transformieren-Feld im Bereich Parameter auf und aktivieren die Option Winkel für die Transformation. Um die Drehräder um ihren Pitching-Winkel zu drehen, geben wir hier einen Wert an. Ein Winkel von 60° lässt den Drehrädern genügend Spielraum bei der Rotation.

Weil wir den Zufalls-Effektor im Anschluss auch für die Farbe der Drehräder in ihrem Material verwenden möchten, klappen wir zusätzlich das Farbe-Feld auf und aktivieren den Farbmodus. Bei den übergeordneten Effektor-Parametern des Zufalls-Effektors lässt sich über den Startwert mit den Zufallswerten experimentieren. Mehr dazu später.

 

In der Editor-Ansicht sind die Veränderungen, die der Effektor bewirkt, normalerweise sofort zu beobachten. Vorausgesetzt, dem Klon-Objekt wurde der Zufalls-Effektor bei dessen Erzeugung entsprechend zugewiesen. Falls nicht, können wir dies schnell im Einstellungsdialog des Klon-Objekts über den Bereich Effektoren nachholen. Aus dem Objekt-Manager ziehen wir hier alle Effektoren hinein, die auf das Klon-Objekt wirken sollen bzw. dürfen.

 

Um die Szene etwas aufzupeppen, lassen wir die Drehräder unterschiedlich bunt ausfallen. Dabei wird uns der Zufalls-Effektor einiges an Arbeit ersparen. Zunächst erzeugen wir uns aber ein Neues Material, wahlweise über den gleichlautenden Menü-Befehl im Material-Manager oder auch per Doppelklick auf eine freie Stelle des Managers.

 

Damit der Zufalls-Effektor Einfluss auf die Farbe im Farbe-Kanal nehmen kann, legen wir dort den Farbe-Shader aus dem Untermenü MoGraph im Pfeilbutton-Menü der Textur an.

 

Nach Klick auf den Button des Farbe-Shaders befinden wir uns im ziemlich übersichtlichen Einstellungsdialog des Farbe-Shaders. Hier versichern wir uns, dass für den Kanal die Option Farbe gewählt ist.

 

Nun müssen wir das Material für die Drehräder nur noch dem Extrude-NURBS-Objekt des Flügels zuweisen. Dazu ziehen wir es aus dem Material-Manager auf das Flügel-Objekt des Drehrades in den Objekt-Manager. Wem die Farbkombination für die Drehräder noch nicht richtig gefällt, kann im Zufalls-Effektor den Startwert-Parameter verändern, bis ihm die zufällig gewählten Farben gefallen.

 

Aufbau des Dynamics-Systems mit Kollisionsobjekten und Rigid Bodies

Nun ist die Szene so weit vorbereitet, dass wir die an der Simulation mitwirkenden Elemente in ein Dynamics-System einbinden können. Fangen wir mit den reinen Kollisionsobjekten an, also Objekten wie der Ebene und dem Boden, die nicht dynamisch, sondern lediglich zur Kollisionserkennung am System beteiligt sind.

Über das Menü Simulation>Dynamics werden beide mit dem Befehl Kollisionsobjekt erstellen als Kollisionsobjekt definiert.

 

Durch den Befehl bekamen die selektierten Objekte ein Dynamics Body Tag zugewiesen, in dessen Einstellungsdialog für uns bereits automatisch die dynamische Funktionalität deaktiviert und die Kollisionserkennung aktiviert wurde. Im Bereich Kollision setzen wir die Elastizität und Reibung auf jeweils 30%, damit die aufprallenden Kugeln nicht ungewollt nach oben springen, sondern langsam ausrollen.

 

Etwas anders sieht die Lage beim zweiten Kollisionsobjekt, der Rutschebene, aus. Hier benötigen wir im Bereich Kollision das Statische Mesh als Kollisionsform. Aufgrund der L-Kontur der Rutschebene ist so garantiert, dass die Form des Objekts auch korrekt für die Berechnung der Kollision verwendet wird. Der Parameter Reibung darf für die Ebene ruhig etwas höher ausfallen, damit die Kugeln später nicht zu schnell durch den Drehrad-Parcours rollen.

 

Im Gegensatz zu den reinen Kollisionsobjekten nehmen die Drehräder aktiv am dynamischen Geschehen teil. Da sie zugleich feste (rigid) Körper sind, definieren wir sie als Rigid Bodies. Dazu selektieren wir das Flügel-Objekt aus der Hierarchie des Klon-Aufbaus und legen es über den Befehl Rigid Body erstellen aus dem Menü Simulation>Dynamics als Rigid Body fest.

 

Auch das Verhalten der Drehräder bei Kollision fällt anders aus. Damit keine ungewollte Unruhe in das Klon-Gitter kommt, bevor überhaupt eine echte Kollision stattfindet, setzen wir im Einstellungsdialog des Dynamics Body Tags die Auslösung der dynamischen Eigenschaft auf Bei Kollision.

 

Auf der Kollision-Seite geht es um die Detailabstimmung der Kollisionseigenschaften. Hier sorgt die Einstellung Automatisch als Kollisionsform dafür, dass die für die besondere Form der Drehräder nötige bestmögliche Kollisionshülle verwendet wird. Weil wir nicht wollen, dass die aufprallenden Kugeln nach der Kollision weit davonspringen, reduzieren wir die Elastizität auf 20%. Der hohe Reibungswert von 80% sorgt ebenfalls dafür, dass die Kugeln bei jeder Berührung mit den Drehrädern Energie verlieren.

Die Verwendung einer eigenen Masse ist immer dann ratsam, wenn man kollidierende Objekte unterschiedlicher Masse aufeinander abstimmen muss. Da sich die Kugeln von den Drehrädern zwar nicht in der Größe, dafür aber in ihrer Masse stark von den Drehrädern unterscheiden, geben wir hier eine eigene Masse von 8 an. Die Rotationsmasse von 80% sorgt dafür, dass sich die Drehräder etwas leichter drehen lassen.

 

Um noch etwas mehr Einfluss auf die vorherrschende Energie zu haben und zu erreichen, dass die Simulation in angemessenem Zeitraum zur Ruhe kommt, dämpfen wir die an den Drehrädern vorliegenden Kräfte zusätzlich.

Auf der Kräfte-Seite des Einstellungsdialogs bekommen die Drehräder eine lineare Dämpfung von 60% sowie eine Dämpfung der Rotation von 80% zugewiesen. Trotz starken Aufpralls der Kugeln werden sich die Drehräder dadurch relativ schnell wieder beruhigen.

 

Funktioneller Ausbau der Drehräder mit Konnektoren

Würde man die Simulation durch Klick auf den Abspielbutton starten, fielen und rutschten die Drehräder bei der ersten Kollision sang- und klanglos die Ebene hinunter. Zwar stecken sie mit ihrer Achse optisch in der Ebene fest, bei unserer Simulation spielen die Achsen aber noch keinerlei Rolle. Um eine Verbindung zwischen den sich drehenden Flügeln der Drehräder mit der Achse zu schaffen, verwenden wir die sogenannten Konnektoren. Wir finden sie im Menü Simulation>Dynamics.

 

Prinzipiell ist es dem Konnektor egal, wo er bei den Elementen bzw. Hierarchien im Objekt-Manager untergebracht ist. Um aber die Logik in unserer Szene zu erhalten, kombinieren wir ihn funktionell korrekt mit dem Zylinder-Objekt der Achse. Für einen besseren Überblick bei der Integration des Konnektors deaktivieren wir vorübergehend die Produktion der Klone über den Objekt-Manager.

 

Wenn der Konnektor die Rolle einer Drehachse einnehmen soll, benötigt er zunächst die korrekte Position und Ausrichtung, in unserem Fall also die Koordinaten und Winkel der zylindrischen Achse. Diesen Vorgang vereinfacht uns der Befehl Übernehmen aus dem Menü Funktionen, den wir bei selektiertem Konnektor aufrufen.

 

Im Einstellungsdialog des Übernehmen-Werkzeugs geben wir als Erstes das Zylinder-Objekt der Achse als Datenspender an. Wir ziehen es dazu aus dem Objekt-Manager in das zugehörige Feld Übernehmen von. Da wir die Feinjustierung gleich beim Konnektor selbst vornehmen werden, lassen wir an dieser Stelle alle Parameter durch Klick auf den Button Zuweisen übernehmen.

 

Wir selektieren den Konnektor über den Objekt-Manager und passen seine Ausrichtung an das Drehrad an. Wie in der Abbildung unten zu sehen, ist der Heading-Winkel um – 90° und der Pitching-Winkel (gemäß der Schräge der Ebene) um 40° zu drehen. Auf der Darstellung-Seite können wir die Größe des Konnektors reduzieren, damit er besser zum Drehrad passt.

 

Die eigentliche Funktionalität des Konnektors legen wir auf der Objekt-Seite des Einstellungsdialogs fest. Der Typ Scharnier hält die verbundenen Objekte an der Achse fest und erlaubt lediglich die Drehung um die vorgegebene Referenzachse. Da es sich bei unserem Beispiel mit Flügelrad und Achse um die identische Achse handelt, könnten wir auch sparsamer sein, trotzdem hilft es bei der Orientierung, speziell bei komplexeren Szenen, möglichst exakt zu arbeiten, um auch später noch alles nachvollziehen zu können.

Als Objekt A für die Verbindung ziehen wir das Achsen-Objekt aus dem Objekt-Manager in das dafür vorgesehene Feld. Da die Bewegung um die X-Achse laufen soll, wählen wir diese Achse als Referenzachse aus. Als Objekt B dient das Flügelrad-Objekt mit der identischen Referenzachse. Mehr ist an dieser Stelle für den Konnektor nicht zu beachten.

 

Nachdem wir uns um die eigentliche Funktion des Konnektors gekümmert haben, legen wir ihn als Unterobjekt der Achse des Drehrades an. Da die Achse über den Konnektor funktionell mit dem Flügelrad verbunden wird, ist der Konnektor hier gut aufgehoben.

 

Erzeugung dynamischer Kugeln mit dem Partikelsystem

Das Spielgerät ist voll ausgestattet und funktionsfähig, nun benötigen wir nur noch Kugeln mit dynamischen Eigenschaften, die wir darauf loslassen können. Eine Kugel haben wir ja bereits in der Szene. Damit das Spielgerät aber richtig in Betrieb genommen wird, lassen wir weitere Kugeln aus einem Partikelemitter ausstoßen. Doch zunächst versehen wir die Kugel mit den gewünschten dynamischen Eigenschaften, damit sie an der Simulation überhaupt teilnehmen kann.

 

Dafür benötigt die Kugel ein Dynamics Body Tag mit aktivierten dynamischen Eigenschaften. Also weisen wir dem Kugel-Objekt über den Befehl Rigid Body erstellen aus dem Menü Simulation>Dynamics dieses passende Tag zu.

 

Im Einstellungsdialog des Dynamics Body Tags finden wir auf der Dynamics-Seite die Basiseigenschaften versammelt. Hier stellen wir die Auflösung auf Sofort, damit die Kugeln gleich nach ihrem Erscheinen in der Szene in Aktion treten können.

 

Wenden wir uns den Kollisionseigenschaften auf der Kollisions-Seite zu. Eine Kugel ist bei der Kollisionsberechnung absolut unproblematisch; hier funktioniert die automatische Erkennung. Elastizität und Reibung der Kugel bleiben mit mittleren Werten im Rahmen. Sollten Kugeln später miteinander kollidieren, werden sie dadurch auch weniger weit abprallen.

Die Einstellungen auf der Masse-Seite sind im Zusammenhang mit den Einstellungen des Drehrades interessant. Dort hatten wir eine eigene Masse von 8. Damit die Kugeln aufgrund einer zu hohen Masse nicht zu heftig und schwer auf die Drehräder einschlagen und das System durcheinanderbringen, setzen wir die Masse der Kugel auf einen Wert von etwa 5.

 

Damit auch die Kugeln (analog zu den Drehrädern) relativ schnell nach dem Durchlauf zur Ruhe kommen, vergeben wir auf der Kräfte-Seite eine Dämpfung. Für die lineare Dämpfung sowie für die Rotationsdämpfung reicht ein Wert von 20%, damit die Kugeln nicht zu weit entfernt ausrollen.

 

Ihre dynamischen Eigenschaften hat die Kugel nun, aber sie ist immer noch auf sich alleine gestellt. Um mehr Kugeln von ihrer Sorte zu produzieren, verwenden wir sie als Partikel in einem Partikelsystem. Dazu benötigen wir ein Emitter-Objekt, das die Kugel-Partikel generiert und losschickt. Wir finden es in der Palette der Partikelsystem-Objekte.

 

Im Einstellungsdialog des Partikelemitters können wir genau festlegen, wie viele Kugeln in welche Zeit aus welcher Position produziert werden. Um das Spielgerät nicht zu überfordern, habe ich mich für eine Geburtsrate von zwei Partikeln (pro Sekunde) entschieden. Die Emission der Kugeln wird sofort gestartet und endet nach acht Sekunden, also bei Bild 200. Eine ausreichend hohe Lebensdauer der Partikel ist wichtig, damit die Kugeln nicht vorzeitig von der Bildfläche verschwinden.

Auf der Emitter-Seite des Einstellungsdialogs legen wir die Form und Größe des Emitters fest. Weil die emittierten Kugeln nahezu die komplette Breite des Spielgeräts ausnutzen sollen, verwenden wir eine X-Länge von 145 cm. Die schmalen 10 cm in Y-Richtung garantieren uns, dass die Kugeln nahezu horizontal abgegeben werden und nicht von zu weit oben herunterfallen.

 

Den fertigen Partikelemitter positionieren wir nun über die Editor-Ansicht bzw. über den Koordinaten-Manager an die obere Kante des Spielgeräts. Bei der Ausrichtung immer beachten, dass die Partikel in Richtung der Z-Achse abgegeben werden.

 

Um dem Partikelemitter die Kugel als Partikel zuzuweisen, ordnen wir sie ihm über den Objekt-Manager einfach unter. Das eigentliche Kugel-Objekt ist jetzt aus der Editor-Ansicht verschwunden und tritt nur noch in Form der emittierten Partikel in Erscheinung.

 

Globale Dynamics-Einstellungen

Standardmäßig herrscht in CINEMA 4D eine der Erdanziehung ähnelnde Gravitationskraft. Diese und mehr Einstellungen finden wir in den Dokument-Voreinstellungen auf der Dynamics-Seite.

Auf der Experte-Seite lassen sich zusätzlich einige Standardwerte abändern, um speziell die Kollisionserkennung besser auf die an der Simulation beteiligten Elemente abzustimmen. In unserem Fall bietet es sich an, die Skalierung auf 10 cm herabzusetzen und die Kollisionstoleranz möglichst gering zu halten.

 

Damit sind alle Vorbereitungen und Einstellungen getroffen, sodass wir mit einem Klick auf den Abspielbutton die Dynamics-Simulation starten können.

 

Mit diesem fertigen Beispiel lassen sich die Auswirkungen der Dynamics-Eigenschaften sehr schön studieren. Mit anderen Massen-, Reibungs- oder auch Dämpfungswerten in den einzelnen Dynamics Body Tags bekommen die Elemente sehr schnell gänzlich andere Eigenschaften.

Viel Spaß beim Experimentieren!

Wir empfehlen:
Maxon BodyPaint 3D-Video-Training

Unsere Empfehlung für dich

Cinema 4D für Einsteiger – für R16/R17/R18

Cinema 4D für Einsteiger – für R16/R17/R18

Überschreite mit unserem neuen und sagenhaften Standardwerk für Cinema 4D die Grenzen der Wahrnehmung. Das Release 16 ist das beste Update, das Maxon je herausgebracht hat!

  • Neue Funktionen von R16, R17 und R18 im Detail erklärt
  • In über 15,5 Stunden Video-Training Cinema 4D von A bis Z ergründen
  • PLUS 850 PDF-Seiten und Arbeitsmaterialien
  • Maximales Kreativtraining: Nachbau des Covermotivs

Zum Training