Keyframing und Interpolation Methoden der Computeranimation 2.5.2002 Keyframing und Interpolation
3D Computeranimation Keyframes der sich bewegenden Objekte festlegen Interpolation zwischen den einzelnen Keyframes Speichern der Bilderfolge
Keyframing der Positionen
Interpolation Es gibt verschiedene Möglichkeiten um zwischen einzelnen Keyframes zu Interpolieren (z.B.: zeitliche Interpolation) Keine Interpolation Lineare Interpolation Polynomielle Interpolation Interpolation mittels einer Spline Kurve
Keine Interpolation
Lineare Interpolation
Polynomielle Interpolation
Spline Interpolation
Probleme Bei räumlicher Interpolation muss das Objekt immer eine Strecke zwischen jedem Bild zurücklegen, die abhängig von der dazugehörigen Geschwindigkeitskurve ist.
Lineare Streckenkurve Q Ortskurve: u s Streckenkurve: t
Nichtlineare Streckenkurve Q Ortskurve: u s Steckenkurve: t
Reparametrisierung Berechnung der Strecke s, die zum Zeitpunkt t zurückgelegt wurde. Berechnung der Position des Objektes, wenn es die Strecke s zurückgelegt hat.
Lösung Wir definieren eine Hilfsgröße u = [0,1], die Zwischenwerte zwischen zwei Keyframes annimmt. Die Geschwindigkeitskurve in Abhängigkeit von u definiert sich:
Die zurückgelegte Bogenlänge s in Abhängigkeit zu u ist definiert als: Die Position auf der Ortskurve Q anhand der zurückgelegne Strecke ist demnach:
Streckenkurve monoton wachsend Für u1, u2 aus [0, 1] gilt A(u1) < A(u2) => u1 < u2 Gesucht sa aus [u1, u2], dann [u1, u3] und [u3, u2] mit u3 = (u1 + u2) / 2 s3 = A(u3) und sa = A(ua) Wenn s3 < sa weitersuchen im ersten Intervall Sonst weitersuchen im zweiten Intervall
Geometrische Interpretation der Bogenlänge in Cartesischen Koordinaten: Sei dann ist die Bogelänge ds zwischen den Punkten Q(U) und Q(u + du)
Integriert man das erhält man die Bogelänge zwischen den Punkten Q(u0) und Q(u). (A)
Da wir eine kubische Kurve betrachten, können wir die als schreiben und
einsetzen in (A) wobei
Die Funktion ist nicht integrierbar. Deshalb benutz man die erweiterte Simpson Regel dabei sind:
Berechnung gilt nur für ein Kurvensegment. Zusammengesetzte Kurve muß vorberechnet werden. In Tabelle steht zu jedem ui die Summe der Streckensegmente. Suche in der Tabelle nach nächstem Wert zu sa sehr einfach.
Splines Erleichtern die Interpolation, da bekannt, wie sie zwischen Punkten interpolieren. Kontrollparameter beeinflussen die Interpolation zwischen den Punkten. Kochanek-Bartels Spline meistgenutze Kurve in der Computeranimation
Kochanek-Bartels Spline Interpoliert kubisch zwischen zwei aufeinanderfolgenden Punkten. Benutzt wird die Hermite Interpolation Spline lässt sich durch tension t (Spannung), continuity g (Stetigkeit) und bias b (Ausrichtung) verändern.
Auswirkungen der Spannung Links t = 0 Mitte t = -1 Rechts t = +1
Auswirkungen der Stetigkeit Links g = 0 Mitte g = -1 Rechts g = +1
Auswirkungen des Ausrichtung Links b = 0 Mitte b = -1 Rechts b = +1