Basis-Eigenschaften
Icon-Einstellungen
Manchmal ist es aus Übersichtsgründen gewünscht, eine Vielzahl eigentlich gleicher Icons besser unterscheiden zu können. Genau das macht diese Funktionalität, mit der Sie Objekten und Tags eigene Icons verleihen oder vorhandene Icons neu zuweisen oder einfärben können:
Beachten Sie den Modus Eigene Icons anzeigen im Tab "Ansicht" des Objekte-Managers, mit dem Sie jederzeit auf die Cinema 4D-eigenen Icons umschalten können.
Es gibt einige wenige Objekte (z.B. Houdini-Generator) oder Tags (z.B. Material-Tags), die sich nicht einfärben lassen, da diese direkt von Cinema 4D gesteuert werden.
Sie können hier entweder:
Möchten Sie ein vorhandenes oder eigenes Icon einfärben, sind Sie hier richtig. Sie haben für Objekte folgende Auswahlmöglichkeiten:
Tags haben keine Ansichtsfarbe und können daher nur mit einer selbst gewählten Farbe gefärbt werden (aktivieren Sie dazu die Option Icon-Farbe).
Mit diesen beiden Befehlen können Icons als Preset gespeichert und auch wieder geladen werden. Gespeichert und verwaltet werden eigene Icons im Content Browser unter "Presets/User" (im entsprechenden Ordner).
Sie können allen Objekten und Elementen (wie z.B. Shader) beliebige Namen verleihen. Unter diesem Namen taucht das Objekt oder Element im XPresso-Editor bzw. der Zeitleiste auf.
Falls das Element (Objekt, Tag, Spur etc.) einer Ebene zugewiesen wurde, finden Sie hier Ebenenname und -farbe. Ebenen können direkt aus dem Ebenen-Bowser bzw. aus anderen gleichartigen Feldern hierher gezogen werden. Sie können aber auch mittels des kleinen Menüs, das sich hinter dem rechten kleinen Dreiecksbutton verbirgt, Ebenen zuweisen oder auch das Element von der aktuellen Ebene entfernen. Im Manager anzeigen öffnet Ihnen den Ebenen-Manager.
Klicken Sie auf das kleine Dreieck links von Ebene, um die Ebeneneigenschaften einzublenden. Hierdurch haben Sie Zugriff auf alle Eigenschaften, die ansonsten nur mittels des Ebenen-Managers zugänglich sind.
Sie können jeder Expression eine Priorität zuordnen. Dies ist bei selbst geschriebenen Python-Expressions mitunter äußerst sinnvoll. Es kann nämlich sehr wichtig sein, wann eine Expression ausgewertet werden soll: So kann ein und dieselbe Expression zu völlig unterschiedlichen Ergebnissen führen, je nach Auswertungszeitpunkt.
Deshalb können Sie unter Priorität jetzt haargenau definieren, wann die Expression ausgeführt wird.
Machen Sie sich bewusst, dass diese Auswertungsreihenfolge bei jedem Animationsbild einmal durchlaufen wird!
Das Wertefeld kann zwischen –499 und 499 liegen und bezieht sich dabei auf die links daneben ausgewählte Kategorie. Sie haben die Auswahl unter Initial, Animation, Expressions, Dynamics, Generatoren.
Bei Expressions mit exakt gleicher Priorität entscheidet ihre Position im Objekt-Manager: Die Expressions werden gemäß ihrer Tag-Reihenfolge (sowohl gemäß der Objektreihenfolge, als auch – bei mehreren Expressions auf einem Objekt – von links nach rechts) abgearbeitet.
Sie haben folgende 4 Expressions mit Prioritäten definiert:
Es ergibt sich folgende Reihenfolge bei der Ausführung:
Im Falle der Dynamics z.B. (Priorität Generator +400) sind diese Prioritäten komplett intern definiert und können nicht geändert werden, d.h. beispielsweise, dass Expressions (die z.B. eine Punktposition auslesen), die auf durch die Dynamics deformierte Objekte zeigen, eine Priorität von mind. Generator +401 benötigen.
Diese Option definiert, ob das Objekt/Tag auch dann ausgeführt wird, wenn sich lediglich die Ansicht ändert (das ist der Fall, wenn Sie im Editor navigieren).
Hiermit können Sie die jeweilige Expression an- und ausschalten.
Beim Berechnen von Prioritäten hat Pose Morph zwei Zustände, die berechnet und berücksichtigt werden müssen: die Priorität der Grundpose und die Priorität der "gemorphten" Pose. Dieser 2. Prioritätenparameter definiert den Zeitpunkt, zu dem Ihre Expression, Deformier etc. auf Ihr Objekt wirken soll. So kann beispielsweise eine Expression auf die Grundpose wirken, bevor diese gemorpht wird. Die Berechnungsreihenfolge ist dann:
Damit können Konflikte und damit einhergehende verzögerte/zitternde Morphings besser vermieden werden.
Wenn die neue Grundpriorität mit der normalen Priorität identisch ist, wird Pose Morph nur dann eine Änderung (setzen der Grundpose, dann Morphpose) vornehmen, wenn tatsächlich gemorpht wird. Generatoren müssen dann also bei nicht stattfindendem Morphin nicht erneut berechnet werden. Das beschleunigt die Berechnung.
Merken Sie sich als Faustregel: lassen Sie beide Prioritäten auf demselben Wert stehen (= schnellere Berechnung), solange keine Probleme mit Generatoren, Expressions oder Deformern auftreten. Erst dann sollten Sie den gemorphten Zustand mit einer späteren Priorität versehen.
Diese Option definiert, ob das Objekt/Tag auch dann ausgeführt wird, wenn sich lediglich die Ansicht ändert (das ist der Fall, wenn Sie im Editor navigieren).
Mischen
Ähnlich wie im Constraint-Tag können Sie hier Parameter aktivieren oder deaktivieren, es werden dabei teilweise neue Tabs eingeblendet. Das sind hier sind die verschiedenen, möglichen Morph-Typen:
Hiermit können Sie Objektpositionen morphen.
Hiermit können Sie alle Parameter, die im Tab "Objekt" eines Objekts enthalten sind morphen.
Mittels dieser Option kann die Objektgröße gemorpht werden. Beachten Sie, dass Sie das Objekt-Werkzeug zum Skalieren verwenden (das Modell-Werkzeug skaliert nur die Punktemenge, aber nicht die Achsen).
Auch Benutzerdaten können gemorpht werden. Stellen Sie sich beispielsweise 2 (Benutzerdaten-)Schieberegeler auf Ihrem Objekt vor. Jeder dieser Schieberegler kontrolliert einen Parameter. Sie können dem Objekt jetzt ein Pose-Morph-Tag verpassen um schnell Morphziele der Schieberegler zu erstellen.
Hiermit können Sie die Winkellage des Objekts morphen.
Pose Morph morpht alle Objekte, die sich unter dem Pose-Morph-Tag tragenden Objekt befinden. Damit können Sie beispielsweise ganze Joint-Hierarchien morphen. Genau so funktioniert das aber auch mit punktbasierten Morphvorgängen.
Hiermit werden Objektpunkte gemorpht. Das Objekt muss punktbasierend sein (polygonal, Spline, FFD, Korrektur-Deformer, Kamera-Deformer etc.). Ja, auch FFD funktioniert mit dem Pose-Morph-Tag. Zusätzlich können auch Hair-Guides gemorpht werden.
Hiermit können Vertex-Maps und Wichtungs-Maps gemorpht werden.
Auch UV-Koordinaten können gemorpht werden. Das ist sehr praktisch, wenn Sie eine Textur sehr präzise auf dem Objekt verschieben wollen. Texturen müssen dazu (logischerweise) mit UVW-Projektion versehen sein. Es muss ebenfalls ein UVW-Tag vorhanden sein (bei parametrischen Objekten sind diese intern gespeichert und nicht verfügbar. Sie müssen das Objekt dann erst bearbeitbar machen).
Punkteoptionen
Die folgende Gruppe von Einstellungen wird nur angezeigt, wenn der Punkte Mischen-Modus aktiviert ist. Sie gelten nur für Korrigierendes PSD Morphing.
Im Modus Bearbeiten wird bei einem selektierten korrigierendem PSD-Morph der treibende (oder verknüpfte) Joint des Morphs in der Ansicht hervorgehoben. Dadurch wird beim Erstellen und Justieren von korrigierenden PSD-Morphs das Identifizieren der treibenden Joints vereinfacht.
Hiermit definieren Sie die Farbe des hervorzuhebenden Treiber-Joints (für das selektierte korrigierende PSD-Morph).
Positionsschwellwert [0..100000m]
Treiber-Joints und morphende Punkte werden beim Erzeugen eines korrigierenden PSD-Morphs automatisch verknüpft.
Dazu liest voreinstellungsgemäß das Pose-Morph-Tag zunächst das erste Wichtungs-Tag des Meshs, um die Wichtungen der morphenden Punkte festzustellen und welche Joints diese Wichtungen beeinflussen. Danach wird noch die Ausgangspose betreffender Joints ausgewertet. Joints, die anders als ihre Ausgangspose liegen und Punkte von einem Morph beeinflussen, werden als Treiber der morphenden Punkte zugewiesen. Kurz: wird ein morphender Punkt von einem Joint beeinflusst und weicht dessen Matrix von der Joint-Ausgangspose ab, wird der Joint automatisch als Treiber für diese Punkte zugewiesen.
Der Positionsschwellwert dient zum Feinjustieren bei der Zuweisung der Treiber-Joints. Er basiert auf der Positionsvariation zwischen Ausgangsposen und posierten Joints. Je höher der Wert, desto größer muss die Abweichung zwischen Ausgangspose und aktueller Joint-Position ein, um als Treiber klassifiziert zu werden.
Orientierungsschwellwert [0..180°]
Diese Einstellung ist ähnlich dem Positionsschwellwert, außer dass die maßgebende Abweichung zwischen den Joint-Ausrichtungen von Ausgangspose und aktueller Jointausrichtung ermittelt wird. Es geht also darum, wohin die Jointachse zielt. Höhere Werte benötigen höhere Differenzen zwischen beiden Zuständen, um als Treiber angesehen zu werden.
Verdrehungsschwellwert [0..180°]
Ähnlich wie Positions- und Ausrichtungsschwellwert, nur dass hier die Abweichungen der Verdrehung (Joint-Längsachse) zwischen Ausgangspose und aktueller Pose in Betracht gezogen werden. Höhere Werte benötigen höhere Differenzen zwischen beiden Zuständen, um als Treiber angesehen zu werden.
Hier wird der benötigte Speicher angezeigt. Da ja im Tag immer Kopien des Objekts angelegt werden, kann die Szenendatei je nach Objekt und Anzahl der Morph-Ziele sehr groß werden.