Im vorangegangenen Tutorial zum Thema Dynamische Inverse Kinematik wurde der Alien-Character mit zwei IK-Ketten an den Fühlern bzw. Antennen in einem ersten Schritt animationstauglich gemacht.
Über das Morphing-Werkzeug PoseMorph wollen wir in diesem Tutorial für den Mund und die Antennen eine Regler-Steuerung realisieren, die es uns leicht macht, das Gesicht des Aliens zu animieren.
In der Datei PSD_C4D_R12_PoseMorph_Start.c4d findet ihr den Ausgangszustand - im Vergleich zum Tutorial zur dynamischen inversen Kinematik wurde lediglich die Dynamics-Funktion abgeschaltet und zwei zusätzliche Joints für den Mund integriert.
Diese zwei Joints sind nötig, damit wir für das Öffnen des Mundes ein Kiefergelenk an der passenden Stelle zur Verfügung haben. Diese beiden Joints sind im jetzigen Zustand weder Teil der Alien-IK, noch besitzen sie Wichtungen, über die sie die Geometrie des Aliens verändern könnten. Dies erledigen wir noch zuvor - wer direkt mit dem Morphing anfangen möchte, öffnet einfach die Datei PSD_C4D_R12_PoseMorph_Mund.c4d und springt zum nächsten Abschnitt in diesem Tutorial.
Einbinden der neuen Joints in die vorhandene IK-Kette
Momentan liegen die beiden Joints für Kiefer und Mund noch außerhalb der IK-Kette. Das Kiefer-Joint stellt dabei das drehbare Kiefergelenk bereit, das Mund-Joint wird uns später erlauben, den Unterkiefer zu verzerren.
Zunächst gilt es, die Kiefer-IK an der richtigen Stelle in der Alien-Joint-Hierarchie zu integrieren. Da in unserem Fall der Kopf-Joint für die Ausrichtung des Kopfes zuständig ist, legen wir Kiefer- und untergeordneten Mund-Joint als Unterobjekte in das Kopf-Joint.
Damit sind die Kiefer-Joints zwar schon Teil der Gesamt-IK, allerdings sind diese Joints noch nicht an die Geometrie gebunden - eine Grundvoraussetzung, damit sie die Geometrie überhaupt verformen können.
Das Skin-Objekt ermöglicht die Verformung über die im Wichtungs-Tag hinterlegten Joint- und Wichtungsinformationen. Um die nachträglich erstellten beiden Joints mit aufzunehmen, öffnen wir das Wichtungs-Tag im Attribute-Manager und ziehen Kiefer- und Mund-Joint in das zugehörige Joint-Feld des Einstellungsdialogs.
Nun werden die beiden Joints vom Skin-Objekt für die Verformung akzeptiert. Wie sieht es aber mit den Wichtungen aus? Durch das manuelle Einbinden der Joints besitzen sie zunächst keinerlei Einfluss auf die Geometrie - wir müssen sie also ebenfalls nachträglich durch Wichtung einrichten.
Dazu schalten wir den HyperNURBS-Käfig des Alien-Characters ab und aktivieren das Wichtungs-Werkzeug über das Menü Character. Nachdem wir den Mund-Joint selektiert haben, können wir die Wichtung mit dem Pinsel-Werkzeug auftragen. Für den Alien-Kopf sollte das Mund-Joint den kompletten Unterkiefer beeinflussen können.
Diese Wichtung reicht auch schon für unsere Zwecke aus. Da der Kiefer-Joint lediglich die Basis für die Drehung des Mund-Joints bietet, muss er auch keine eigene Wichtung zugeteilt bekommen.
Wieder ist es am Schluss ratsam, zu überprüfen, ob durch die nachträgliche Wichtung trotzdem noch alle Wichtungen funktionstüchtig sind. In meinem Fall knöpfte der nachträglich hinzugefügte Mund-Joint dem Kopf-Joint einige Wichtungen ab, was sich leicht durch Selektieren des Kopf-Joints überprüfen und mit dem Wichtungs-Werkzeug beheben lässt.
Jetzt sind die beiden Joints voll in die IK-Hierarchie integriert und können an der Verformung des Alien-Kopfes mitwirken. Wir testen das gleich durch einfaches Verschieben des Mund-Joints in eine beliebige Achsrichtung.
Einrichten der PoseMorph-Posen für den Mund
Einer der größten Vorteile von PoseMorph ist, dass es ganze Hierarchien verschiedenster Objekte verarbeiten kann. Weil wir für die Animation des Alien-Kopfes sowohl Joints aus der IK-Kette als auch Null-Objekte (die Ziele für die Antennen) verwenden werden, gruppieren wir diese Objekte einfach unter ein gemeinsames Überobjekt Rig zusammen, dem wir anschließend das PoseMorph-Tag zuweisen.
Im Menü Charakter liegt das PoseMorph-Tag in zwei Ausführungen vor: für das Punkt-Morphing und für das Morphing von Position, Größe und Richtung der enthaltenen Objekte, als PSR-Morph (Position, Size, Rotation). Um der Rig-Gruppe das richtige PoseMorph-Tag zuzuweisen, selektieren wir das Rig-Objekt und fügen das PSR-Morph über den gleichnamigen Befehl im Menü Character zu.
Im Einstellungsdialog des PoseMorph-Tags befinden wir uns nun im Bearbeiten-Modus, der uns bereits die Grundpose und eine erste Pose für die weiteren Morphings anbietet. Wir werden diese Pose für das Öffnen des Mundes verwenden.
Nach Doppelklick auf den Eintrag Pose.0 erlaubt uns CINEMA 4D, für die Pose einen eigenen, aussagekräftigen Namen zu verwenden.
Die gewählte Pose ist bereits zur Bearbeitung aktiviert, deshalb können wir sofort loslegen. Wir selektieren das Kiefer-Joint im Objekt-Manager und aktivieren das Rotations-Werkzeug. Durch Drehen des Joints entlang seiner x-Achse öffnen wir den Mund des Alien-Characters - nicht zu weit, damit es keine unverwünschten bzw. unnatürlichen Verzerrungen oder Überlappungen der Geometrie gibt.
Damit der Unterkiefer bzw. das Kinn etwas größer wirkt, selektieren wir das Mund-Joint und schieben es ein Stück nach unten bzw. vorne. PoseMorph merkt sich neben dem anliegenden Winkel schließlich auch jede Positionsänderung, deshalb können wir frei von der Leber weg an den Posen feilen.
Testen wir aus, ob die erstellte Pose erwartungsgemäß funktioniert. Dazu wechseln wir über den Einstellungsdialog des PoseMorph-Tags vom Bearbeiten- in den Animieren-Modus und verschieben den Stärke-Regler. Je nach eingestelltem Wert öffnet bzw. schließt sich der Mund unseres Alien-Characters.
Nun lässt sich der Mund bereits öffnen; um das Alien aber noch etwas lustiger wirken zu lassen, erstellen wir zusätzliche Posen zur Verzerrung bzw. zum Verschieben des Unterkiefers zu den Seiten.
Dazu erzeugen wir uns als Erstes eine weitere Pose, indem wir auf den Button Pose hinzufügen klicken.
Wir benennen auch diese Pose zunächst passend um. Ich habe an dieser Stelle zur einfacheren Orientierung die von mir als Anwender gesehene Seitenlogik benutzt. Nach dem Einrichten der Pose schieben wir das Mund-Joint entsprechend der Seitenlage nach links bzw. rechts, passen dabei aber wiederum auf, dass keine unerwünschten Verzerrungen oder übermäßigen Verformungen entstehen.
Über den Koordinaten-Manager können wir ablesen, um welchen Betrag wir das Mund-Joint zur Seite geschoben haben. Diesen Wert merken wir uns, damit wir für die linke Seite einen gleich großen Versatz sicherstellen können.
Analog zur linken Seite des Mundes erzeugen wir auch für die rechte Seite eine neue Pose, die wir adäquat benennen. Das Mund-Joint wird diesmal um den negativen Betrag des von der linken Seite bekannten Versatzes verschoben. Dies könnt ihr sehr einfach über den Koordinaten-Manager erledigen.
Damit wären die wichtigsten Posen für den Mund erstellt, womit wir uns an den Test der eingestellten Posen wagen können. Im Animieren-Modus finden wir nun insgesamt drei Posen für den Alien-Mund, die wir nach Belieben über die jeweiligen Schieberegler einstellen und - ganz wichtig - natürlich miteinander kombinieren können.
Um diese Mundsteuerung auch komfortabel außerhalb des PoseMorph-Tags kontrollieren zu können, fügen wir die drei Parameter bzw. Posen zum Head-Up Display (HUD) hinzu. Dazu selektieren wir die drei Parametereinträge im Attribute-Manager und öffnen mit der rechten Maustaste das Kontextmenü. Mit dem Befehl Zu HUD hinzufügen stellen wir uns die drei Kontrollen bequem in die 3D-Ansicht, …
… wo wir sofort mit den uns zur Verfügung stehenden Reglern weiterexperimentieren können.
Einrichten der PoseMorph-Pose für die Fühler bzw. Antennen
Bis jetzt haben wir die Posen für das Morphing im PoseMorph-Tag durch Verschieben bzw. Rotieren der Joints in unserer IK-Hierarchie erstellt. Bei den Fühlern bzw. Antennen sehen wir gleich, dass auch die Position von einfachen Null-Objekten als Information ausreicht, um mit dem PoseMorph-Tag zu arbeiten.
Dazu selektieren wir zunächst die beiden Ziel-Null-Objekte der Antennen über den Objekt-Manager. Im bereits vorhandenen PoseMorph-Tag fügen wir über den Button Pose hinzufügen eine weitere Pose für die Antennen hinzu.
Nach Doppelklick auf den Namen der neu erstellten Pose vergeben wir einen eindeutigen Namen für die Steuerung der Fühler bzw. Antennen im PoseMorph-Tag.
Bei der Zielpose lassen wir den Alien-Character die beiden Antennen stark einziehen. Dafür müssen wir lediglich die beiden selektierten Ziel-Objekte für die Antennen entlang ihrer y-Achse nach unten schieben.
Nach der Erstellung der Pose erfolgt der Test - wir wechseln in den Animieren-Modus und steuern die Fühler bzw. Antennen unseres Alien-Characters über den Schieberegler der Pose im PoseMorph-Tag.
Wenn sich das neue Steuerelement zu den anderen HUD-Einträgen hinzugesellen soll, müssen wir das bereits vorhandene HUD-Element durch das Kontextmenü mit Klick mit der rechten Maustaste und dem Befehl Entfernen löschen.
Anschließend selektieren wir alle für das HUD geeigneten Parametereinträge über den Attribute-Manager und fügen sie wieder über das Kontextmenü mit der rechten Maustaste neu zum HUD hinzu.
Damit die HUD-Gruppe auch in der Editor-Ansicht sichtbar bleibt, wenn das PoseMorph-Tag nicht selektiert ist, rufen wir durch Klick mit der rechten Maustaste auf das HUD-Element das zugehörige Kontextmenü auf und wählen dort im Unterpunkt Zeige den Eintrag Immer.
Mit den bereits vorhandenen Kontroll- und Kombinationsmöglichkeiten lässt sich der Alien-Character nun schon recht schön über PoseMorph steuern.
Soweit eine kleine Einführung in die Möglichkeiten des neuen PoseMorph-Tools von CINEMA 4D Release 12. Natürlich könnt ihr noch wesentlich mehr Posen integrieren und damit experimentieren.