Das gerenderte und vertonte Endergebnis dieses Tutorials könnt ihr euch unter diesem Link ansehen. In den Begleitmaterialien zu diesem Tutorial findet ihr neben der Ausgangsprojektdatei „PSD_C4D_R19_SoundEffector_start.c4d“ auch die finale Version „PSD_C4D_R19_SoundEffector_final.c4d“.
Das in diesem Tutorial verwendete Sound-Material (an dieser Stelle „Danke!“ an meinen Sohn Manuel) liegt ebenfalls in zwei Dateiformaten bei, selbstverständlich könnt ihr stattdessen auch eine eigene Sound-Datei (.aif, .wav, .aac, .m4a etc.) einbinden.
Sehen wir uns zunächst die Elemente der Ausgangsszene an. Damit sich die per Sound animierten Objekte weich auf einem Untergrund spiegeln, besitzt die Szene ein Boden-Objekt mit einem spiegelnden Metall-Material mit rauer Oberfläche. Die in der Szene integrierte Kamera ist nur ein Vorschlag für die spätere Render-Perspektive.
Der im Objekt-Manager obere, parametrische Würfel dient als Klon für einen inneren Kreis aus Würfeln, welche auf die mittleren Frequenzen der Sound-Datei reagieren sollen.
Der zweite, in ein Polygonobjekt umgewandelte Würfel wurde zu einem extrem flachen Quader skaliert. Sein Achsmittelpunkt befindet sich auf der Unterseite des Quaders, damit die auf den Würfel angewandten Transformationen ausschließlich nach oben wirken können.
Klon-Objekt für den inneren Kreis erzeugen und einrichten
Beginnen wir mit dem ersten Klon-Objekt, das den parametrischen Würfel vervielfachen und kreisförmig anordnen soll. Wir selektieren dazu den parametrischen Würfel in der 3D-Ansicht oder auch im Objekt-Manager und rufen das Menü MoGraph auf. Das dort befindliche Klon-Objekt erzeugen wir bei gedrückt gehaltener Alt-Taste.
Die Hinzunahme der Alt-Taste hat bewirkt, dass der als Klon gedachte Würfel gleich wie gewünscht dem Klon-Objekt untergeordnet wurde. Damit wir die Klon-Objekte nicht verwechseln können, benennen wir das erste Klon-Objekt nach Doppelklick auf seinen Namen im Objekt-Manager kurzerhand um.
Im zugehörigen Einstellungsdialog des Klon-Objekts öffnen wir die Objekt-Seite und setzen den Klon-Modus auf Radial. Eine Anzahl von 40 Klonen sorgt dafür, dass die Würfel bei einem Radius von 600 cm sehr eng aneinander liegen. Um die Klone auf der horizontalen Ebene anzuordnen, wählen wir XZ als Ebene.
Klon-Objekt für den äußeren Kreis erzeugen und einrichten
Auf die gleiche Weise erzeugen wir ein Klon-Objekt für den äußeren Kreis. Dieses zweite Klon-Objekt bekommt den polygonalen Würfel als Klon untergeordnet. Im Einstellungsdialog des Klon-Objekts verwenden wir diesmal einen größeren Radius von 1000 cm, und auch die Anzahl der Klone erhöhen wir entsprechend auf 70, damit die Klone wieder dicht aneinander liegen.
Damit sind die beiden Klon-Objekte auch schon perfekt vorbereitet, um sie in den nächsten Schritten mit den neuen Sound-Effektoren gezielt zu transformieren bzw. zu animieren.
Ersten Sound-Effektor erzeugen und einrichten
Beginnen wir mit dem äußeren Kreis aus Klonen. Damit der Effektor gleich dem richtigen Klon-Objekt zugewiesen wird, selektieren wir das Klon-Objekt für den äußeren Kreis und erzeugen über das Menü MoGraph>Effektor den gewünschten Sound-Effektor.
Der gerade erzeugte Sound-Effektor liegt zwar auf der obersten Hierarchieebene im Objekt-Manager, doch wenn wir den Einstellungsdialog des Klon-Objekts auf der Effektoren-Seite öffnen, finden wir den Sound-Effektor als Eintrag wieder. Der Übersichtlichkeit halber benennen wir auch den zugehörigen Sound-Effektor nach Doppelklick auf seinen Namen im Objekt-Manager passend um.
Damit der Sound-Effektor seine Arbeit tun kann, müssen wir ihm eine Sound-Datei vorgeben. Im Einstellungsdialog des Sound-Effektors finden wir dazu auf der Effektor-Seite den Eintrag Soundspur mit dem Pfeil-Button Lade Sound.
Im geöffneten Auswahldialog navigieren wir wahlweise zum Verzeichnis mit den Begleitmaterialien zu diesem Tutorial oder zu einer beliebigen anderen Sound-Datei, die für den Sound-Effektor verwendet werden soll, und laden sie über den Button Open in den Sound-Effektor.
Nach diesem Schritt ist der Sound bereits aktiv, sodass wir ihn über den Abspielbutton des Animationsbereichs abspielen können. Dabei sind auch schon erste – wenn auch noch ziemlich rudimentäre – Bewegungen der Klone erkennbar. Die in der C4D-Projektdatei hinterlegte Dokument-Länge von 1150 Bildern (Frames) entspricht der Länge der mitgelieferten Sound-Datei. Wenn ihr kürzere oder längere Sounds verwendet, solltet ihr die Länge gegebenenfalls anpassen.
Zurück im Einstellungsdialog des Sound-Effektors sehen wir im Graphen Amplitude die animierten Frequenzen der Sound-Datei angetragen. Der Sound-Effektor für den äußeren Kreis soll sich um den Frequenzbereich ab ca. 3000 Hz kümmern. Wir halten die Animation bzw. den Sound daher an einer Stelle an, bei der sich der Graph über alle Bereiche erstreckt, und schieben den als Rahmen eingezeichneten Abtastbereich dorthin. Die Höhe bzw. Breite des Abtastbereichs lässt sich über die kleinen Greifer verändern.
Der Sound-Effektor reagiert nun ausschließlich auf Frequenzen im eingerahmten Bereich. Im Moment ist ein von Rot nach Gelb verlaufender Farbgradient für den gesamten Frequenzbereich hinterlegt.
Wir können den Verlauf aber nach unseren Vorstellungen anpassen, indem wir den Eintrag Farbverlauf über den kleinen Pfeil aufklappen und den Gradienten neu gestalten. Ich habe mich für Violett und Rosa entschieden, wobei Violett an beiden Enden anliegt, um einen Farbsprung zu vermeiden.
Bis jetzt reagieren alle Klone gemeinsam auf die anliegende Amplitude, dies liegt an der Einstellung Spitze für das Sampling. Um die vom Abtastbereich eingefangene Kurve auf die vorliegenden Klone zu übertragen, stellen wir im Menü Sampling auf Form um.
Bei dieser Gelegenheit setzen wir außerdem den Wert Abklingen auf 50 %, um eine sichtbare Verzögerung bei der Animation der Klone einzubauen.
Nun bekommt der Sound-Effektor die Daten also geliefert und aufbereitet, sodass wir ihm nur noch mitteilen müssen, was denn nun genau mit den betroffenen Klonen passieren soll. Dazu wechseln wir auf die Parameter-Seitedes Einstellungsdialogs.
Die flachen quaderförmigen Würfel sollen mit der Amplitude nach oben wachsen, weshalb wir im Bereich Transformieren die Modifikation der Position deaktivieren und stattdessen die Skalierung aktivieren. Da die Quader ausschließlich nach oben steigen sollen, tragen wir nur für die Größe in Y-Richtung (G.Y) einen Wert von 400 ein.
Damit sich der von uns erstellte Farbverlauf auch tatsächlich auf den Klonen bemerkbar macht, klappen wir noch den Bereich Farbe auf und schalten dort den Farbmodus auf An.
Jetzt ist der Sound-Effektor für den äußeren Klon-Kreis fertig eingerichtet, sodass sich wieder ein Klick auf den Abspielbutton lohnt. Wie gewünscht wachsen die kleinen Quader gemäß der Amplitude im gewählten Frequenzbereich der Sound-Datei nach oben.
Zweiten Sound-Effektor für den inneren Klon-Ring erzeugen und einrichten
Um den zweiten Sound-Effektor, der sich um den inneren Klon-Ring kümmern soll, nicht von Grund auf neu erzeugen und einrichten zu müssen, fertigen wir einfach eine Kopie des ersten Sound-Effektors durch Ziehen mit gedrückt gehaltener Strg- bzw. Ctrl-Taste im Objekt-Manager an.
Der Übersichtlichkeit halber benennen wir den duplizierten Sound-Effektor gleich entsprechend um. Dank unserer Kopie ist der Sound bereits im Einstellungsdialog auf der Effektor-Seite enthalten, sodass wir uns direkt dem gewünschten Frequenzbereich und den Farben im zugehörigen Farbverlauf zuwenden können.
Ich habe mich für den Bereich zwischen 70 Hz und 1500 Hz entschieden und dafür den Abtastbereich entsprechend angepasst. Als Farben habe ich knallige Blau- und Grüntöne gewählt.
Damit die Animation der Klone für diesen sehr aktiven Bereich nicht zu träge wird, reduzieren wir in den Abtastbereichseigenschaften den Wert für das Abklingen auf 5 %, womit nur noch eine leichte Verzögerung zu erkennen ist.
Auf der Parameter-Seite des Einstellungsdialogs wählen wir für den Transformationsmodus die Einstellung Absolut, um für die Skalierung mit absoluten Werten rechnen zu können. In X- und Z-Richtung soll sich der Würfel auf ein Zehntel seiner Größe reduzieren (Wert 0.1), während er sich in Y-Richtung auf das Zwanzigfache verlängert (Wert 20).
Jetzt müssen wir diesen zweiten Sound-Effektor nur noch dem richtigen Klon-Objekt zuweisen. Dazu öffnet ihr den Einstellungsdialog des Klon-Objekts für den inneren Klon-Ring auf der Effektoren-Seite und zieht den Sound-Effektor für diesen Klon-Ring aus dem Objekt-Manager in das Effektoren-Feld.
Unsere Arbeit an den Sound-Effektoren ist damit erledigt. Per Klick auf den Abspielbutton können wir nun die mit den Sound-Effektoren animierten Klone beider Klon-Ringe bewundern.
Drehung der Klon-Ringe über XPresso
Nach der Pflicht folgt bekanntlich die Kür, weshalb wir an dieser Stelle nicht Stopp machen, sondern den Klon-Ringen durch entgegengesetzte Rotationen noch etwas mehr Pep verleihen. Um diese Drehung unabhängig von der Länge des Sounds und ohne Keyframes zu animieren, realisieren wir die Rotation über eine kleine XPresso-Expression.
Wir beginnen mit der XPresso-Expression für den äußeren Klon-Ring und weisen diesem Klon-Objekt über das Kontextmenü der rechten Maustaste aus den CINEMA 4D Tags ein XPresso-Tag zu.
Per Doppelklick auf das Tag-Symbol im Objekt-Manager öffnen wir den XPresso-Editor und ziehen als ersten Node-Baustein das Klon-Objekt des äußeren Klon-Rings aus dem Objekt-Manager in den XPresso-Editor.
Mit unserer XPresso-Expression möchten wir den globalen Heading-Winkel (Globaler Winkel.H) des Klon-Rings animieren, weshalb wir nach Klick auf den blauen Port-Button des Nodes genau diesen Port an seinem Eingang zur Verfügung stellen.
Gesteuert werden soll die Rotation des Klon-Rings in Abhängigkeit von der Zeit bzw. dem aktuellen Bild. Diese Information bietet uns der Zeit-Node, den wir im Kontextmenü der rechten Maustaste unter Neuer Node>XPresso>Allgemein finden.
Um das jeweils aktuelle Bild als Information aus dem Node abgreifen zu können, klicken wir auf den roten Port-Button des Zeit-Nodes und stellen den Bild-Port am Ausgang des Nodes bereit.
Wenn wir nun die beiden Nodes über die von uns bereitgestellten Ports miteinander verbinden würden, übernähme der Klon-Ring direkt das aktuelle Bild als Winkelangabe für den Klon-Ring. Eine volle Drehung würde also schon nach 360 Bildern erreicht, was bei 25 Bildern pro Sekunde eine ziemlich schnelle Angelegenheit ist – zu schnell, um die vom Sound-Effektor animierten Klone richtig wahrnehmen zu können.
Um die Drehung etwas zu verlangsamen, binden wir zwischen den beiden Nodes noch einen Mathe-Node ein. Wir finden ihn im Kontextmenü der rechten Maustaste unter Neuer Node>XPresso>Berechne.
Durch Selektion des Mathe-Nodes im XPresso-Editor bekommen wir seine Einstellungen im Attribute-Manager angezeigt. Um die Rotationsgeschwindigkeit zu verlangsamen, teilen wir den später am ersten Eingang liegenden Wert über die Funktion Dividieren durch die am zweiten Eingang von uns vorgegebene Konstante von 5.
Jetzt müssen wir die drei Nodes im XPresso-Editor nur noch durch Ziehen mit gedrückter Maustaste von Port zu Port miteinander verbinden.
So weit die XPresso-Expression für den äußeren Klon-Ring. Um den Aufbau dieser Expression als Grundlage für die Animation des inneren Klon-Rings zu verwenden, kopieren wir uns das XPresso-Tag durch Ziehen mit gedrückt gehaltener Strg- bzw. Ctrl-Taste im Objekt-Manager auf das Klon-Objekt des inneren Klon-Rings.
Wieder öffnen wir den XPresso-Editor durch Doppelklick auf das XPresso-Tag, um die notwendigen Änderungen für den inneren Klon-Ring vorzunehmen. Den Node des äußeren Klon-Rings ersetzen wir durch einen neu erzeugten Node für den inneren Klon-Ring, wieder mit dem globalen Heading-Winkel als Eingangsport.
Da der innere Klon-Ring einen wesentlich kleineren Radius als der äußere Klon-Ring besitzt, ändern wir zusätzlich die Konstante im Mathe-Node. Um die Drehung noch weiter zu verlangsamen, geben wir den Wert –50 vor. Der negative Wert bewirkt, dass sich der innere Klon-Ring entgegengesetzt zum äußeren Klon-Ring dreht.
Nun können wir die fertige Animation nach Klick auf den Abspielbutton begutachten und auch ein erstes Rendering erzeugen. Obwohl die Klone noch gar kein eigenes Material besitzen, übernehmen sie dank unserer Vorgaben im Sound-Effektor die Farbverläufe als Farbe.
Noch etwas interessanter könnte unsere Animation wirken, wenn wir dem Klon einen leuchtenden Schimmer in Materialfarbe verleihen würden.
Materialien für den Glüh-Effekt
Diesen leuchtenden Schimmer können wir den Klonen sehr leicht über ein Material mit Glüh-Effekt verleihen. Wir erzeugen uns dazu per Doppelklick auf eine freie Stelle im Material-Manager ein erstes Material für das Glühen der Klone des inneren Klon-Rings.
Im Einstellungsdialog des Materials im Attribute-Manager öffnen wir zunächst die Basis-Seite und aktivieren dort den Glühen-Kanal. Mit diesem Schritt wird übrigens auch gleichzeitig der Glühen-Effekt in den Render-Einstellungen aktiviert.
Bevor wir uns dem Glühen widmen, springen wir zur Farbe-Seite des Materials. Um die vom Sound-Effektor vorgegebene Farbinformation als Farbe im Farbe-Kanal verwenden zu können, benötigen wir den MoGraph-Farbe-Shader. Wir klicken dazu auf den Pfeil-Button der Textur und bestimmen über das Untermenü MoGraph den Farbe-Shader als Textur.
Auf der Glühen-Seite des Materials reduzieren wir die innere Stärke auf 50 % und die äußere Stärke auf 120 %, damit noch genug von den Klonen sichtbar bleibt. Stattdessen erhöhen wir den Radius auf 150 cm und den Zufalls-Wert auf 100 %, um das Glühen in der Animation lebendig zu gestalten.
Für das Glühen des äußeren Klon-Rings habe ich mir ein zweites Material angelegt, bei dem der Radius 200 cm beträgt. Die im Vergleich zum inneren Klon-Ring etwas dunklere Klon-Farbe wird dadurch ausgeglichen.
Nun müssen wir die beiden Materialien den Klonen nur noch per Drag-and-drop vom Material-Manager in den Objekt-Manager zuweisen. Der Würfel des inneren Klon-Objekts bekommt das Material mit dem etwas kleineren Glüh-Radius, der Quader des äußeren Klon-Objekt das Material mit dem größeren Glüh-Radius.
Nach diesem Schritt ist unsere MoGraph-Animation mit dem Sound-Effektor fertiggestellt. Wer die Animation als fertigen Film rendert, bekommt auch gleich den Sound in die Ausgabe-Datei eingebunden.