28
28.06.22 Magnus Brockschmidt - 15. 1.2003 1 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert realistischer Eindruck

14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

Embed Size (px)

Citation preview

Page 1: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

26.04.23 Magnus Brockschmidt - 15.1.2003 1

Vortrag über Animationen zum Seminar Computergrafik WS 02/03

Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert realistischer Eindruck

Page 2: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 2

Animation Interpolatoren Bewegung starrer Körper Pfadanimation Gelenkstrukturen / Skelettanimation Inverse Kinematik Forward Kinematik Lippensynchrone

Charakteranimation

Page 3: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 3

Interpolatoren Gegensatz zu Motion Capture:

keine aufgezeichnete Bewegung Einfügen von Schlüsselbildern Bewegungsfunktion durch

Schlüsselbilder (z.B. Beziér) Mehr Schlüsselbilder

realistischer Eindruck

Page 4: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 4

Lineare Interpolation Sinnvoll, da feste Framerate Interpolationsfunktion abhängig

von der verstrichenen Zeit Einfaches Beispiel:

Öffnen einer Schiebetür Objekte als starre Körper

Page 5: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 5

Interpolationsfunktion der Zeit Position des i-ten Punktes zur Zeit t

P(i,t) = ( P(i,te) – P(i,ta))

ta die Anfangszeit te die Endzeit dt die Zeit zwischen zwei Bildern

dt ta - te

_____

Page 6: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 6

Verstrichene Zeit dt dt < 10 ms Bild nicht zeigen Vermeidung von Rundungsfehlern Zu viele Bilder pro Sekunde dt > 1 s Bild nicht zeigen ?

Page 7: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 7

Animation durch Interpolation

Darstellung durch 2 Punktlisten 1. Liste Anfangspunkte 2. Liste Endpunkte

Page 8: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 8

Komplexere Interpolation

Viele Schlüsselbilder großer Aufwand

Page 9: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 9

Interpolationsprobleme Transformation durch Matrix

Weitere Bewegungen (z.B. Rotation)

M(t) =

0 0 0 tx (t) 0 0 0 ty (t) 0 0 0 tz (t) 0 0 0 1

M(t) =

a13 (t) a13 (t) a13 (t) tx (t) a13 (t) a13 (t) a13 (t) ty (t) a13 (t) a13 (t) a13 (t) tz (t) a13 (t) a13 (t) a13 (t) 1

Page 10: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 10

Beliebige Bewegungen

Problem 1: Nicht zwangsweise in Orthonormalform

Folge: Verformung des Körpers Problem 2:

Alle Animationen in einer Matrix Folge: kein Zugriff auf einzelne BewegungLösungsansatz: Pfadanimation

M(t) =

a13 (t) a13 (t) a13 (t) tx (t) a13 (t) a13 (t) a13 (t) ty (t) a13 (t) a13 (t) a13 (t) tz (t) a13 (t) a13 (t) a13 (t) 1

Page 11: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 11

Pfadanimation

Ursprünglich: Reine Offline Entwicklung Teilung in 2 Bereiche Offline: Definition des Pfades Laufzeit: Berechnung der

Transformationen an Hand des Pfades

Page 12: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 12

Pfad und Charakteristische Kurve

Weitere Teilung in 2 Kurven (z.B. Bézier) Pfad, der Bewegung definiert Charakteristische Kurve

(z.B. Wippen des Oberkörpers beim Laufen,

Geschwindigkeitsverlauf) Vorteil: Zugriff auf einzelne Bewegungen

Page 13: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 13

Beispiel Pfadanimation

Q(u) Pfad in 3D (durch Interfaceansicht) V(u) Geschwindigkeitsverlauf

Page 14: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 14

Bestimmung der Transformationen

1.    Für ein Bild zu Zeit t finde Abstand s von V(u). 2.    Gehe s Einheiten an dem Pfad Q(u) entlang um das

zugehörige u zu finden. 3.    Substituiere dieses u in den Gleichungen Q(u) um die

Position des Objektes (x, y, z) zu finden. 4.    Füge Objekt in die Szene ein.

Page 15: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 15

Reparametrisierung

V(u) parametrisierter Schreibweise V(t,s) t und s Funktionen von u Aus 1. Schritt: nenne Wert abhängig von u: T(u) T(u) durch Substituierung von u mit s=S(u) an Q(u) abtragen Pfad abh. von u und nicht s Neu substituieren (Reparametrisierung) u=T-1(t) und u=Q-1(s) Annähernugsmethode

Page 16: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 16

Annäherung durch Aufsummierung

Teilen des Pfades in möglichst kleine Abschnitte u1,u2, ...

merken der Abstände l1 ,l2 , ... in einer Tabelle (aufsummiert)

Finde u bezüglich s Nehme nächsten aus Tabelle Anzahl der Abschnitte Genauigkeit des Wertes

Page 17: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 17

Reparametrisierung an Hand eines Verfolgungsjagdbeispiels

Unterschied zwischen kleiner und großer Geschwindigkeit des grauen Punktes, der von Auto verfolgt wird

Page 18: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 18

Rotation bei Interpolatoren Zur Direktionsänderung eines Objektes R (1 ,2 ,3 )

Beispiele: Einfache Rotation: R (0 ,0 ,0 ), ... , R (π t ,0 ,0), ... , R (π ,0 ,0 ) Doppelte Rotation: R (0 ,0 ,0 ), ... , R (0 ,π t ,π t), ... , R (0 ,π , π )

Komplexere Drehungen mit Hilfe von Quaternionen

Page 19: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 19

Gelenkstrukturen / Skelettanimation

Bestehen allerdings aus starren Elementen Verbunden über Gelenke Frei bewegliche Enden Gelenke geben ein Bewegungsfeld der Enden und

Elemente an

Ebenfalls: Gegensatz zu Motion Capture kein Aufzeichnen

Generieren einer Körperbewegung

Körper nicht starr

Page 20: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 20

Menschliches Bein

3 Elemente (Oberschenkel, Unterschenkel, Fuß) 3 Gelenke (Hüfte, Knie, Hacke) Oberschenkel und Unterschenkel sind fest Fuß frei (Strukturende) Vordefinierte Bereiche (z.B. Knie nur Winkel in eine

Richtung)

Page 21: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 21

Forward Kinematik (FK)

naiver Ansatz: Bewegungen hierarchisch die Elemente hinunterwandern

Bewegungen zum Gehen: Hüftgelenk Hüfte ganz oben Translation der Hüfte Verbundene Hüft Knie Bewegung um Hüftgelenk

Rotation als Winkelfunktion der Zeit Also wenn der Unterschenkel starr „Goose Step“, Deswegen:

Knie Winkel-Rotation Kniegelenk Winkel verändern

Page 22: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 22

Inverse Kinematik (IK)

High-Level Ansatz: Definition von Ausgangs- und Endsituation

IK: Bildung eines Scripts Transformationen durch

auslesen des Scripts

Page 23: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 23

FK versus IK

Kompliziertere Struktur FK: mehr Aufwand IK: schwierigerer Ansatz, eventuell unmöglich

Möglichkeiten für den Modellierer FK: elementarere Bewegungen IK: begrenzte Anzahl an Bewegungsabläufen

Komplexität für den Modellierer FK: prinzipiell simple IK: nur Stellung der Endpunkte

Page 24: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 24

Walzer und Ballett Vorgegebene Schrittfolge Unwichtig ob Schritt zu gleicher

Position gleiche Bewegung Inverse Kinematik

Jede Bewegung eigene Charakteristik Wenig wiederholende

Schrittfolgen Forward Kinematik

Page 25: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 25

Einfache Gelenkstruktur 2 Elemente und 2 Gelenke Ein Ende frei Bewegungsraum in einer Ebene Bewegung des freien Endes:

X sei Bewegungsfunktion des Endes sei Vektor, der Stellung der Struktur angibt X abhängig von Längen und Winkeln:

X = ( l1 cos1 + l2 cos(1+2) ,

l1sin1 + l2 sin(1+2) )

X = f( )

Page 26: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 26

Gelenkstruktur in FK/IK FK: naiverweise

= ( 1 , 2 ) IK: Lösung folgender Gleichung

= -1 ( X )

arccos( x² + y² - l1² - l2² ) 2 l1 l2

Daraus folgt: 2 =

1 = arctan (

)

__________________________________-(l2 sin2 ) x + ( l1 + l2 cos2 ) y (l2 sin2 ) y + ( l1 + l2 cos2 ) x

____________________________

Page 27: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 27

Lippensynchrone Charakteranimation

Ziel: Nachahmung der Lippenbewegung Einerseits bei Originalaufnahme Ebenfalls bei synthetischer Stimme

Pulse3D Beispielpräsentation im Web

Page 28: 14.06.2015Magnus Brockschmidt - 15.1.20031 Vortrag über Animationen zum Seminar Computergrafik WS 02/03 Animiation: Bewegung von Objekten zeit- oder ereignisgesteuert

15. Januar 2003 Magnus Brockschmidt 28

Realitätsbezug Wenn Offline Animation

möglich Zurückgreifen auf

Motion Capture Zukunft

Entwicklung von AI Spiele Robotik