Mithilfe des Ausdruck-Controllers können Sie mathematische Ausdrücke verwenden, um die folgenden Animationsaspekte zu steuern: Objekt-Parameter wie Länge, Breite und Höhe, außerdem Transformations- und Modifikatorwerte wie die Positionskoordinaten eines Objekts.
Benutzeroberfläche Vorgehensweise
Sie können Werte beschränken, indem Sie sie mit den Controller-Werten anderer Objekte in der Szene verknüpfen.
Ein Ausdruck ist eine mathematische Funktion, die einen Wert zurückgibt. 3ds Max wertet den Ausdruck einmal für jedes Frame einer Animation aus und erstellt Werte, die von Frame zu Frame unterschiedlich sein können.
Sie können folgenden Arten von Szenenelementen Ausdrücke zuweisen:
Szenenelement | Controller |
---|---|
Erstellungsparameter | Jedem numerischen Erstellungsparameter |
Transformationen | Position [X, Y, Z] X-Rotation Y-Rotation Z-Rotation Skalierung [X%, Y%, Z%] |
Modifikatoren | Jedem numerischen Modifikatorparameter (einschließlich Erstellungsparametern) |
Materialien | Farben [R, G, B] Jedem numerischen Materialparameter |
So weisen Sie einer Variablen einen konstanten Wert zu:
3ds Max öffnet ein neues Dialogfeld.
So weisen Sie einer Variablen einen Controller zu:
3ds Max öffnet das Unterdialogfeld Spuransichtsauswahl, in dem die Spurhierarchie angezeigt wird. Die Dialogansicht ähnelt der Hierarchie der Spuransicht.
Beispiel: So erstellen Sie einen Ausdruck, der eine Kugel in einem präzisen Kreis bewegt:
Erstellen Sie den Ausdruck-Controller in der Spuransicht.
3ds Max öffnet das Dialogfeld Controller zuweisen.
3ds Max öffnet das Dialogfeld Ausdruck-Controller.
[100*cos(360*NT), 100*sin(360*NT), 0]
Der Ausdruck gibt einen runden Pfad für die Kugel an. NT ist eine Variable mit der Bedeutung normalisierte Zeit ("normalized time"). Eine auf NT basierende Verschiebung ereignet sich genau einmal pro Animation und ist unabhängig von der Anzahl der Frames in der Animation.
Fortsetzung des Beispiels: So ändern Sie den Radius des Kreises:
Durch die beiden Werte 100 im Positionsausdruck des letzten Verfahrens wird der Radius angegeben. Um den Radius des Kreispfads zu ändern, erstellen Sie eine symbolische Variable, die den Radius repräsentiert. Die Variable besitzt einen konstanten Wert, der einfach bearbeitet werden kann.
Im Dialogfeld wird in der Liste "Skalare" der Variablenname "Radius" angezeigt.
3ds Max öffnet ein Dialogfeld mit dem Titel "Radius".
Die Radius-Variable hat nun den Wert 150.
Ab jetzt wird die neue Variable in dem Ausdruck verwendet.
Fortsetzung des Beispiels: So ersetzen Sie den literalen Wert durch den Variablennamen:
[ radius*cos(360*NT), radius*sin(360*NT), 0]
Fortsetzung des Beispiels: So lassen Sie anschließend die Kugel um einen Quader kreisen:
Der Name "quaderposn" erscheint in der Liste "Vektoren" im linken unteren Bereich des Dialogfelds.
Bei den Variablennamen müssen Sie die Groß- und Kleinschreibung beachten; Variablennamen sollten immer klein geschrieben werden.
Das Dialogfeld "Spuransichtsauswahl" wird eingeblendet. Es zeigt die Objekthierarchie so an, wie sie links unter "Spuransicht – Dope-Sheet" erscheint.
[radius * cos(360*NT), radius * sin(360*NT), 0]+quaderposn.
Geben Sie die Animation erneut wieder. Die Kugel dreht sich in einem Kreis um den Quader und folgt jeder Bewegung des Quaders.
Bevor Sie auf "Erstellen" klicken, müssen Sie einen Namen eingeben und einen Typ wählen.
Markieren Sie die Variable in der Liste, sodass der Name im Feld "Name" angezeigt wird. Bearbeiten Sie den Namen im Feld "Name", und klicken Sie dann auf "Umbenennen". In der Liste wird der bisherige Name durch den neuen Namen ersetzt.
Konstantenzuweisung für eine skalare Variable
Konstantenzuweisung für eine Vektorvariable
In dieser Liste stehen p, q und r für Skalarwerte oder Skalarausdrücke, während V und W für Vektorwerte oder Vektorausdrücke stehen.
Ein gespeicherter Ausdruck enthält keine Variablendefinitionen oder -werte. Nach dem Laden der Ausdrücke müssen diese neu definiert werden.
In diesem Fenster werden die Werte aller Variablen sowie der Wert des Ausdrucks angezeigt. Wenn Sie die Variablen ändern oder den Zeitschieber bewegen, wird das Debug-Fenster automatisch aktualisiert, wodurch Sie interaktiv sehen können, was mit dem Ausdruck passiert. Zusätzlich werden die Werte für Frames (F), normalisierte Zeit (NT), Sekunden (S) und Ticks (T) angezeigt.
Im Gegensatz zu herkömmlichen Programmiersprachen ist die Zuweisung nicht explizit (Operator = oder :=); sie ist vielmehr implizit und erfolgt über einen bestimmten Zeitraum.
Wenn im Ausdruck ein Syntaxfehler vorliegt, wird eine Fehlermeldung angezeigt. Die Fehlermeldung enthält den ersten Teil des eigentlichen Ausdrucks. Das letzte Zeichen der Fehlermeldung zeigt die Position des Fehlers an. Normalerweise liegt der eigentliche Fehler genau an dieser Stelle, es sei denn, der Fehler kommt dadurch zustande, dass die runden Klammern für Anfang und Ende (oder die eckigen Klammern bei Vektoren) keine Paare bilden. In diesem Fall kann die Auswertung fortgesetzt werden, bevor der Fehler entdeckt wird.