Multiplikator-
& Nachlasskurven
Dieses Tutorial
baut auf dem ersten Spuransicht-Tutorial
auf, indem das animieren einer springenden Kugel erklärt wird. Nur nochmal
kurz zur Erinnerung: In dem Tutorial wurde gezeigt, wie man das Beschleunigungsverhalten
der z-Bewegung der Kugel vor und nach den einzelnen Keys beeinflussen
muß, um eine geschmeidige Hüpfbewegung zu erhalten. Die Kugel fällt
"aus dem Stand" herab, beschleunigt dabei, prallt auf den Boden auf,
wird dabei mit derselben Geschwindigkeit zurückgeschleudert, steigt
wieder nach oben auf und verliert dabei an Geschwindigkeit, bis sie
schließlich zum Stillstand kommt.
Hier stoppt das
Tutorial. Für eine geloopte Animation völlig ausreichend.
Um die Animation
aber noch zu perfektionieren, fehlen noch einige Dinge: Die Kugel hat
nach ihrem ersten Bodenkontakt weniger Energie (z.B. durch Reibungsverluste),
kann also nicht mehr so hochspringen, und erreicht somit nicht mehr
die Höhe, die sie zu Anfang hatte. Mit jedem Sprung verliert sie immer
mehr an Energie, die Sprünge werden somit kleiner, und kürzer (zeitlich
gesehen). Dies soll nun animiert werden:
Es gibt mehrere
Ansätze dieses Problem zu lösen. Die simpelste wäre natürlich entsprechende
Keys zusetzen. Immer niedrigere z-Höhen in immer kürzeren Zeitabständen.
Geht auch, ist aber umständlich, vorallem wenn man später etwas daran
ändern möchte (viel Spaß beim Keys rumschieben!). Die nächste Methode
wäre eine Dynamik-Lösung. Hier kann mann tausende Parameter einstellen,
vom Luftwiderstand, über Gewicht und Haftreibung der Kugel und des Bodens
bis zur Schwerkraft (Mond oder Erde?). Extrem physikalisch, zeitaufwendig
und leider auch extrem absturzgefährdet.
Dann lieber doch
zurück zur klassischen Animation. Ladet Euch die Szene "Kugel
Ausgangsszene". Hier ist alles soweit vorbereitet. Ein Boden, ein
Gummiball, Lichter und Kamera, alles da... ;-) Die Kugel hab ich bereits
animiert. Zwischen Frame 0 und 30 macht sie brav einen Hüpfer. Beschleunigungsverhalten
ist auch schon fertig. Wie Ihr am Zeitbalken erkennen könnt, habe ich
die Gesamtlänge der Animation auf 150 Frames gestellt. Als erstes soll
die Kugel nun dazu veranlasst werden ihre Bewegung zu loopen und somit
über die gesamten 150 Frames kontinuierlich weiter zu hüpfen. Öffnet
dazu die Spuransicht:
Die
Außenbereichstypen:
Wuselt Euch bis
zur Positionsspur der hüpfenden Kugel durch, aktiviert die Spur, und
klickt oben in der Menüleiste der Spuransicht auf den Button "Funktionskurven".
Ihr solltet nun die aus dem oben genannten
Tutorial bekannte Funktionskurve sehen (siehe Bild links).
Leider
macht die Kugel nur einen einsamen Hüpfer. Um sie zu loopen drückt auf
den Button "Außenbereichstypen für Parameterkurve" (ebenfalls in der
Menüleiste der Spuransicht zu finden. Es erscheint ein Fenster, wie
es das Bild nebenan zeigt. Hier kann man nun beeinflussen, wie sich
eine Animation vor und nach dem ersten, bzw. letzten Key verhalten soll.
Standardmäßig verwendet Max den Typ "Konstant". Das Bildchen unter "Konstant"
veranschaulicht das ganze recht gut. Die gepunktete Line zeigt, daß
die Funktionskurve vor dem Beginn und nach dem Ende einer Animation
auf dem Wert stehen bleibt, wo jeweils der erste und letzte Key gesetzt
wurden.
Um
unsere Kugel, ohne weiteres Keysetzen, weiterspringen zu lassen, wählt
nun den Typ "Schleife". Wie ihr gleich an der gestrichelten Linie der
Funktionskurve erkennen könnt, wird die Animation der Kugel nun bis
ins unendliche geloopt (nächstes Bild). Einen direkten Einfluss
auf diese "Außerbereichskurven" hat man jedoch keinen, da keine Keys
dafür erstellt werden.
Die Multiplikatorkurve:
Nun soll die Kugel
aber an Energie verlieren, sprich jeder Sprung nach und nach niedriger
werden. Dazu kommt nun die "Multiplikator"-Kurve zum Einsatz (ebenfalls
in der Menüleiste der Spuransicht zu finden). Stellt sicher, daß noch
immer die Positionsspur der Kugel aktiviert ist, und klickt dann auf
den Knopf Multiplikatorkurve.
Könnte sein, daß
der Button nicht sofort zu erkennen ist, da er eventuell und dem "Nachlasskurve"-Button
versteckt ist. Einfach ein bisschen länger die Maustaste gedrückt lassen,
dann könnt ihr die Multiplikatorkurve auswählen.
Auf der linken
Seite der Spuransicht ist nun unter der Positonsspur, die Multiplikator-Spur
erschienen. Klickt darauf, so daß sie aktiviert wird. Die Funktionskurve
der Multiplikatorkurve verläuft linear, und ist auf den Wert 1 gesetzt.
Was
bewirkt die Multiplikatorkurve? Sie multipliziert die Spur, der sie
zugewiesen wurde. D.h. momentan hat die Multiplikatorkurve einen Wert
von 1. Die Werte der Positionsspur werden also mit 1 multipliziert.
Und somit passiert zunächst gar nichts, denn mit 1 multipliziert gibt
bekanntlich das gleiche Ergebnis. Würde man nun beide Keys der Multiplikatorkurve
(Max erstellt automatisch einen Key am Anfang und am Ende einer Animation)
auf 0.5 setzen, so würden die Werte der zugehörigen Positionsspur um
die Hälfte reduziert (die Kugel hüpft nur noch halb so hoch). Würde
man die Multiplikatorkurve auf 2 setzen, so würde die Kugel doppelt
so hoch springen.
Nun soll die Kugel
zum Ende der Animation immer niedriger hüpfen, d.h. der Wert der Multiplikatorkurve
muß von 1 (am Anfang) auf 0 (am Ende der Animation) sinken. Dadurch
wird jeder Sprung nach und nach niedriger. Wählt also den letzen Key
der Multiplikatorkurve aus, und setzt ihn auf 0. Daß sich die Änderung
der Multiplikatorkurve auch auf die Positionsspur auswirkt, seht ihr
im Bild links. Je näher sich die Multiplikatorkurve dem Wert 0 nähert,
umso geringer die z-Bewegung, und somit auch die Sprünge der Kugel.
Eure Animation
sollte nun wie diese hier aussehen (kugel1.avi
/ 231kb ).
Das Max-File "Kugel
m. Multiplikatorkurve" gibt's hier zum download (falls ihr
Euch das Zipfile noch nicht runtergeladen habt).
Die Nachlasskurve:
Die Animation ist
jedoch immer noch nicht richtig. Obwohl die Sprünge kleiner werden,
sie dauern alle gleich lang. In der Realität werden die Sprünge aber
nicht nur kleiner, sondern auch kürzer. Man müßte die Sprungintervalle
zum Ende hin immer mehr verkürzen. Aber wie, wenn man keine Keys hat,
die man hinundher schieben kann? Hier kommt die Nachlasskurve zum Einsatz.
Mit ihr kann man die Dauer von Animationen beschleunigen oder verkürzen.
Die Nachlasskurve verbirgt sich unter dem gleichen Button wie die Multiplikatiorkurve
(siehe oben). Um sie hinzuzufügen stellt sicher, daß Ihr die Postionsspur
Eurer Kugel aktiviert habt. Wenn die Multiplikatorspur noch aktiv sein
sollte, würde die Nachlasskurve darauf angewendet werden, und das ergäbe
ein falsches Ergebnis.
Was bewirkt nun
die Nachlasskurve? Seht euch dazu die Funktionskurve an. Sie stellt
eine gerade Linie dar die auf Frame 0 einen Wert von 0 hat, bei Frame
150 einen Wert von 150. Sie verläuft also linear mit einer Steigung
von 1 (für alle die es aus ihrer Schulzeit vergessen haben: m (Steigung)
= y/x (yWert/Zeit)). Für den Animationsablauf bedeutet eine solche lineare
Steigung von 1, daß am Zeitablauf der Animation nichts verändert wird.
Würde man die Steigung
der Nachlasskurve auf 2 erhöhen (die Kurve steiler machen), so würde
die Animation doppelt so schnell ablaufen. Dazu müßte man den letzten
Key (bei Frame 150) der Nachlasskurve auf 300 setzen, den mittleren
Key kann man der Einfachheit halber mal löschen. Die Kugel würde somit
doppelt so schnell springen (ein Intervall braucht nur noch 15 Frames
statt der ursprünglichen 30).
Genauso verhält
es sich wenn man die Nachlasskurve auf eine Steigung von 0,5 setzt,
also flacher werden läßt. Die Animation wird gestreckt. Statt 30 Frames
braucht die Kugel nun 60 Frames um ein Intervall zu durchlaufen. Seht
Euch dazu die Bilder unten an (achtet dabei vorallem auf die Zahlenangaben
von Y und der Zeit X). Laßt Euch dabei nicht von Ausreissern in der
Kurve irritieren (das rechte untere Bild z.B.). Scheint nur ein Darstellungsfehler
von Max zu sein.

Wie muß nun die
Nachlasskurve in unserem Fall aussehen? Die Animation muß anfangs mit
normaler Geschwindigkeit ablaufen, und zum Schluss hin immer schneller
und schneller werden. Also muß sich auch die Steigung der Nachlasskurve
zum Schluss hin erhöhen. Den ersten Sprung möchten wir dabei noch auf
seiner originalen Geschwindigkeit belassen. Ich gehe im folgenden jetzt
davon aus, daß Ihr Eure Nachlasskurve nicht verändert habt, der mittlere
Key der Kurve also noch existiert.
Aktiviert diesen
Key, indem Ihr mit gedrückter linker Maustaste einen Markierungsrahmen
um ihn herum aufzieht. In der unteren Zeile der Spuransicht gibt es
zwei Zahlenfelder in denen die Werte 75 und 75.000 auftauchen. Der erste
Wert spiegelt den Frame 75 wieder, der zweite den Wert 75.000 (y-Achse).
Dieser Key soll nun zu Frame 30 verschoben werden: gebt also im ersten
der beiden Felder 30 ein, und der Key wird zum entsprechenden Frame
verschoben. Nun noch den Wert von 75 auf 30 heruntergesetzt, und somit
ist sichergestellt, daß die Animation in den ersten 30 Frames ihre normale
Geschwindigkeit beibehält. Damit die Animation zum Schluss hin schneller
wird aktiviert den letzten Key und setzt ihn auf einen Wert von 250.
Spielt die Animation
ab. Sie ist fast perfekt. Die Sprünge werden anscheinend zum Schluss
etwas schneller, aber noch ist ein kleiner Fehler in drin. Das liegt
am Kurvenverhalten der Nachlasskurve, alle Keys haben den Standardwert
"glatt" (siehe dazu auch das Tutorial "Einführung in die Spuransicht").
Dies muß verändert werden: Wählt für den ersten Key, heraus=linear.
Für den zweiten Key, hinein=linear, heraus=glatt. Für den letzten Key
hinein=schnell. Durch diese Einstellungen wird sichergestellt, daß die
Steigung der Kurve immer größer als 1 ist, und zum Ende hin immer weiter
ansteigt. Und somit wird die Animation zum Ende hin auch immer schneller.
Am besten öffnet Ihr die downloadbare Max-Datei "Kugel
fertig.max", und seht Euch dort die Einstellung an.
Wenn Ihr alles
richtig gemacht habt (und ich mich nicht zu umständlich ausgedrückt
habe), sollte die fertige Animation wie diese hier (Kugel2.avi
/ 234 kb) aussehen.