Ein unglaublich
wichtiges und mächtiges Tool von 3dsMax; vorallem wenn es um Animation
geht. Hier kann man Keys hin und her schieben, kopieren, löschen, Kurvenerhalten
steuern und vieles mehr. Am Beispiel einer springenden Kugel möchte
ich erklären wie die Spuransicht funktioniert. Das Beispiel ist zwar
nicht gerade anspruchsvoll, aber es eignet sich hervorragend die Problematik
anschaulich darzustellen.
Beginnen
wir mit dem Aufbau einer einfachen Szene. Erstellt euch im Ansichtsfenster
von oben einen Quader von 200x200 Einheiten und einer Höhe von -5. Das
ist der Boden auf dem die Kugel rumhüpft. Als nächstes erstellt ihr
eine Kugel im Ansichtsfenster von vorn, die sich oberhalb des eben erstellten
Quaders befindet. Diese Ausgangsszene könnt ihr auch hier
runterladen. Die Szene sollte auf jeden Fall so aussehen wie das Bild
links.
Die Animation der
springenden Kugel ist nicht besonders lang. Das Herunterfallen und das
Zurückspringen dauert in diesem Beispiel gerade mal 30 Frames. Klickt
dazu auf den Button "Zeitkonfiguration" rechts in der Nähe des Anim-Buttons.
Ändert im erscheinenden Fenster die Länge der Animation auf 30 Frames,
und bestätigt mit ok.
Nun zur Animation:
Bewegt den Zeitbalken zu Frame 15 und aktiviert den Anim-Button. Ihr
befindet euch nun im Animationsmodus. Aktiviert die Kugel, und verschiebt
sie nach unten, so daß sie den Quader knapp berührt. Wechselt dann zu
Frame 30 und schiebt die Kugel wieder in ihre Ausgangsposition zurück.
Spielt die Animation ab. Die Kugel sollte sich nun auf und ab bewegen
wie diese Animaton
zeigt (achtet darauf, daß Euer Mediaplayer die Animation loopt!).
Nicht besonders realistisch, oder? Die Kugel scheint vor dem Abprallen
abzubremsen, und beschleunigt wieder auf ihrem Weg nach oben. Um das
zu ändern wechseln wir nun in die Spuransicht:
Wählt
dazu in der Menüleiste den Punkt Spuransicht -> Spuransicht öffnen.
Der generelle Aufbau des sich öffnenden Fensters: Links werden sämtliche
Objekte und deren zugehörigen Spuren aufgelistet. Rechts werden Keys
oder Kurvenverläufe der einzelnen Spuren zeitlich angezeigt. An welchem
Frame der Animation man sich gerade befindet zeigt die dünne schwarze
Linie, und der dazugehörige Zeitbalken. In der oberen Leiste befinden
sich verschiedene Buttons, um in der Spuransicht arbeiten zu können.
Klickt nun
auf das Kreuzchen vor den Objekten und die einzelnen Objekte in eurer
Szene werden aufgelistet. Es handelt sich dabei nur um den Quader und
die Kugel. Außerdem könnt Ihr im rechten Teil der Spuransicht einen
schwarzen Balken erkennen. Das sagt Euch, daß bei dem Kugelobjekt von
Frame 0 bis 30 irgendetwas animiert wurde.
Um mehr über die Kugel zu erfahren, klickt auf das Kreuz vor der Kugel.
Die Spuransicht wird weiter aufgegliedert. Ihr könnt erkennen daß es
sich bei der Animation um eine Transformation handelt, sprich die Kugel
ihre räumliche Position verändert. In der Spur "Position" sind sogar
die von Euch zuvor gesetzten Keys zu erkennen. Einer bei Frame 0, der
nächste bei 15 und dann der letzte bei Frame 30. Seht Euch das Bild
oben an. So ähnlich sollte es bei Euch auch aussehen.
Klickt
nun in der Werzeugleiste der Spuransicht auf den Button "Funktionskurven"
(so ziemlich in der Mitte, neben dem Magneten). Wenn ihr mit eurem Mauszeiger
ein wenig über dem Button verharrt, wird der Name des Buttons auch angezeigt.
Das Bild des rechten Teils eurer Spuransicht verändert sich. Ihr seht
nun nicht mehr die einzelnen Spuren und deren Keys, sondern nur noch
eine einzelne Spur, und deren Funktionskurve. Wenn ihr im linken Teil
des Fensters eine nichtanimierte Spur ausgewählt habt, wird selbstverständlich
auch keine Kurve angezeigt. Also wechselt auf die Positonsspur eurer
Kugel. Eine blaue Kurve erscheint, die Z-Position eurer Kugel wiederspiegelt.
Die x und y Positionskurve wird als eine gerade Linie dargestellt, ist
ja auch klar, schließlich wird hier nichts animiert. Im Kurvenverlauf
erkennt ihr auch nochmals die einzelnen Keys, die Ihr zuvor gesetzt
habt.
Was sagt uns nun
diese Kurve? Seht euch das Bild links an. Ihr könnt nur eine blaue Kurve
erkennen. Den drei Werten XYZ werden in der Spuransicht die entsprechenden
Farben RGB (rot, grün, blau)zugeteilt. Die blaue Kurve entspricht also
der z-Position der Kugel, während x und y (bzw. rot und grün) immer
auf null bleiben, sprich sich nicht verändern (die Kugel macht in diesen
Raumachsen keine Bewegung).
Bei Frame 0 befindet
sich die Kugel auf der Z-Postion +100. Zu Frame 15 wandert sie auf die
Z-Position +/-0, und steigt dann wieder auf zu z=+100. Jetzt wird's
mathematisch: erinnert euch zurück an eure Mathestunden (ich hätte damals
niegedacht, daß ich das ganze jemals in meinem Leben gebrauchen könnte).
Wisst ihr noch was "Steigung" bedeutet?
Die Steigung
ist die Tangente an einem Graphen (bzw. unserer blauen Kurve). Eine
Tangente ist eine gerade Linie die den Graphen nur an einem Punkt berührt.
Je steiler (=senkrechter) diese Tangente, umso größer ist die Geschwindigkeit,
je flacher (=waagerechter) umso langsamer. Betrachtet dazu das Bild
links unten. Die Tangenten (rot eingezeichnet), sind anfangs steil,
und werden zu Frame 15 hin immer flacher, d.h. die Geschwindigkeit (in
Z-Richtung) nimmt ab. Das bedeutet für unsere Kugel: sie fällt mit einer
hohen Anfangsgeschwindigkeit herab, und bremst je näher sie dem Boden
kommt (bzw. Frame 15) ab. Bei Frame 15 hat sie die Geschwindigkeit 0,
und beschleunicgt dann wieder nach oben, bis sie Frame 30 erreicht hat.
Was bedeutet
das in der Realität? Eine Kugel würde so niemals zu Boden fallen. Im
Gegenteil: Die Kugel wird in der Luft festgehalten, losgelassen und
fällt herunter (Frame 0). Während sie herunterfällt nimmt ihre Geschwindigkeit
immer weiter zu (Luftwiderstände werden nicht berücksichtigt), sie prallt
auf den Boden (Frame 15), und wird mit derselben Geschwindigkeit mit
der sie ankam wieder nach oben geschleudert. Auf ihrem Weg nach oben
verliert die Kugel immer mehr an Geschwindigtkeit (aufgrund der Schwerkraft),
sie bremst sozusagen ab, bis sie keine Geschwindigkeit mehr hat (Frame
30), und fällt dann wieder zurück nach unten (Loop von Frame 0-15).
Die Z-Kurve zeigt
also, daß sich unsere Kugel komplett falsch verhält (deshalb sieht die
Animation auch so seltsam aus). Betrachten wir zunächst mal das Abprallen
der Kugel bei Frame 15. Wie bereits gesagt, müßt die Kugel mit stetig
ansteigender Geschwindigkeit auf dem Boden aufprallen, und mit der gleichen
Geschwindigkeit wieder nach oben steigen. Unsere Steigungstangenten
zeigen aber, daß die Kugel bei Frame 15 abbremst. Und genau das muß
verändert werden.
Wählt
dazu den Key bei Frame 15 aus, indem ihr einfach mit gerückter linker
Maustaste ein Box um ihn herum aufzieht. Der Key wird weiß (=aktiviert).
Klickt nun mit der rechten Maustaste auf den aktivierten Key. Daraufhin
sollte ein Fenster erscheinen wie Bild 5 es zeigt.
Ihr könnt darauf
erkennen, an welchem Key ihr euch befindet (Nr.2), zu welcher Zeit (Frame
15), welchen xyz-Wert die kugel zu diesem Zeitpunkt hat (in diesem Beispiel
X=0 / y=0 / z=20), und (das wichtigste) wie sich die Kurve links und
rechts von diesem Key aus verhält (hinein/heraus). In den Felder "hinein/heraus"
werden sogenannte Bezier-Tangententypen festgelegt:
Standardmäßig verwendet
Max den Typ "glatt": 
Dieser Typ erstellt
eine glatte Interpolation durch den Key hindurch, will heißen, der Graph
(und somit die zugehörige Tangente) beschreibt immer geschmeidige Bewegungen,
Geschwindigkeiten werden niemals abrupt verändert. Genau dies soll aber
verändert werden.
Die Kugel soll
von einem Frame zum anderen ihre Richtung um -100% verändern: Klickt
also in das Feld "hinein", und wählt den Typ "schnell" aus, das gleiche
macht ihr bei "heraus". So sieht der Typ schnell aus: 
Dadurch
erreichen wir eine zunehmende Beschleunigung (Steilheit der Tangente)
der Z-Kurve um den Frame 15 herum. Genau so wie es der Realität entspricht.
Seht euch das Ergebnis in der Animation
an: Ihr könnt erkennen, daß die Kugel zwar korrekt zurückgestoßen wird,
ihr Hüpfverhalten aber immer noch sehr unnatürlich wirkt. Das liegt
an ihrem Beschleunigungsverhalten am Anfang und am Ende der Animation.
Die Z-Kurve in der Spuransicht zeigt das Problem deutlicher. Werft einen
Bilck auf das Bild rechts:
Zwischen Frame
0-15 und 15-30 erkennt Ihr, wie die Kurve kurzzeitig abflacht, ihre
Geschwindigkeit verringert sich. Das ist falsch. Um das zu verändern
aktiviert den ersten Key bei Frame 0. Öffnet wieder mit der rechten
Maustaste das kleine Tangentenfenster. Und betrachtet wieder die Tangententypen.
Auch an Frame 0 hat Max den Standardtyp "glatt" verwendet. Wir benötigen
einen anderen Typ: "langsam". 
Dieser Typ bewirkt,
daß die Kugel zunächst die Geschwindigkeit 0
hat, und dann kontinuierlich beschleunigt. Wählt also für "hinein" und
"heraus" jeweils den Typ langsam. Wiederholt das gleiche bei Frame 30.
Eure
Z-Kurve sollte dann wie das Bild linksaussehen. Die Kugel beschleunigt
langsam, fällt herunter, wird mit der ankommenden Geschwindigkeit wieder
zurückgestoßen, steigt wieder auf, und bremst dabei langsam ab. Somit
ist das ganze dann auch loopbar. Spielt eure Animation ab. Sie sollte
so aussehen wie diese
hier.
Das fertige MAX-File
könnt Ihr Euch hier
herunterladen (das Zip-File ist das selbe wie oben, es enthält
beide Max-Dateien).
Sicherlich ist diese Animation noch lange nicht perfekt. Die Kugel müßte
sich beim Aufprallen etwas zusammenstauchen. Mit jedem Hüpferer verliert
sie immer mehr an Höhe, die Sprünge werden kleiner und kürzer, bis sie
schließlich zum Stillstand kommt. Dennoch hoffe ich Euch einen kleinen
Einblick in die Spuransicht verschafft zu haben.
Mehr zu dem Thema
findet ihr in der Online Referenz zu 3dsMAX. Sucht einfach nach den
Stichworten wie "Spuransicht" oder "Bezier-Controller". Es gibt noch
viele Dinge mehr über dieses Thema zu sagen, vielleicht gibts in den
kommenden Wochen noch das eine oder andere Tutorial dazu....