Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

43
Computeranimation Vortrag im Seminar Computergraphik Alan Akbik

Transcript of Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Page 1: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

ComputeranimationVortrag im SeminarComputergraphik

Alan Akbik

Page 2: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Zielsetzung Was ist Animation? Ein kurzer Einblick in

ihre Entdeckung Überblick über die verschiedenen Arten

der Computeranimation und Begriffsklärung

Ein Beispiel zur Partikelanimation Methoden zur Umsetzung von

Hierarchischer Bewegung

Page 3: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Struktur des Vortrags Zielsetzung/Motivation Entdeckung der Animation Starrkörperanimation Physikalische Simulation Partikelanimation Zusammengesetzte Strukturen /

Hierarchische Bewegung Verhaltensgesteuerte Animation

Page 4: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Entdeckung der Animation (1)

1820: Peter Mark Roget veröffentlicht seinen Bericht ‚The Persistance of Vision with Regard to Moving Objects‘

Er stellt fest, dass das menschliche Auge ein Bild etwa 1/16 einer Sekunde lang in der Retina behält, auch wenn dieses Bild schon verschwunden ist

Gezeigt durch das Thaumatrope, 1824 erfunden von John A. Paris

Page 5: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Thaumatrope

Page 6: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Entdeckung der Animation (2)

Mit sehr schnell aufeinanderfolgenden, sich leicht verändernden Bildern kann der Eindruck von Bewegung gewonnen werden

1832: Phenakistoscope (Joseph Plateau) 1834: Zeotrope (William George

Horner)

Page 7: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Entdeckung der Animation (3)

1919 Max Fleischer - ‚Feline Follies‘

Page 8: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Pixar - Luxo Jr. Erster gerenderter Film - 1986

Page 9: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Struktur des Vortrags Zielsetzung/Motivation Entdeckung der Animation Starrkörperanimation Physikalische Simulation Partikelanimation Zusammengesetzte Strukturen /

Hierarchische Bewegung Verhaltensgesteuerte Animation

Page 10: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Starrkörperanimation

Im Englischen: Rigid Body Animation Begriffsklärung Interpolation/Keyframing Explizites Skripten

Umfasst Translation und Rotation

Grundlegendste Art der Animation

Page 11: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Interpolation/Keyframing

Einige Schlüsselframes werden angegeben, der Computer soll die dazwischenliegenden Frames interpolieren

Lineare Interpolation oft nicht ausreichend

Page 13: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Struktur des Vortrags Zielsetzung/Motivation Entdeckung der Animation Starrkörperanimation Physikalische Simulation Partikelanimation Zusammengesetzte Strukturen /

Hierarchische Bewegung Verhaltensgesteuerte Animation

Page 14: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Physikalische Simulation Idee: Nutze Gesetze der Physik um

realistische Bewegungen zu erzeugen Auf Objekte wirken zB Schwerkraft,

Beschleunigung, Luftwiderstand Der Animator gibt für Objekte Masse,

Startgeschwindigkeit, -beschleunigung, -richtung an

Der Computer simuliert und animiert die daraus folgende Bewegung

Page 15: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Probleme Kontrolle nur über die Startwerte der

Objekte Komplexe Systeme sehr schwer zu

modellieren Problem der Inversen Dynamik

Page 16: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Struktur des Vortrags Zielsetzung/Motivation Entdeckung der Animation Starrkörperanimation Physikalische Simulation Partikelanimation Zusammengesetzte Strukturen /

Hierarchische Bewegung Verhaltensgesteuerte Animation

Page 17: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Partikelanimation Wird benutzt zum Erstellen von Effekten

wie Explosionen Feuer Nebel Wasser(dampf) Sternenfenster

Page 18: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Was ist ein Partikel? Eine sehr kleine Primitive (e.g. ein

Wassertropfen, ein Sandkorn, ein Funken...)

Teil einer großen Menge von Partikeln Entlang eines vorgegebenen Skriptes

randomisierte Bewegung (Ausrichtung, Lebensdauer u.s.w...)

Page 19: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Attribute eines Partikels Startposition Startrichtung und Startgeschwindigkeit Transparenz Form Lebensdauer

Page 20: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Durchzuführende Schritte pro Frame

Partikel deren Lebensdauer abgelaufen ist werden entfernt

Neue Partikel werden generiert Den neuen Partikeln werden individuelle

(randomisierte) Werte gegeben Partikel werden bewegt (andere Werte wie

Farbe oder Transparenz gegebenenfalls geändert)

Partikel werden gerendert

Page 21: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Beispielprogramm In der Präsenation wurde an dieser Stelle

das Programm „Fireworks“ gezeigt. Im Netz zu finden unter www.sulaco.co.za/opengl2.htm

Auf den folgenden Seiten ein Blick auf den Quelltext des Programms

Page 22: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

TypdefinitionconstEXPLOSION_SIZE = 0.8;

type TParticle = Record X, Y, Z : glFloat; dX, dY, dZ : glFloat; R, G, B : glFloat; end; TFirework = Record

Particle : Array[0..127] of TParticle; Trail : Array[0..15] of TParticle; StartTime : Integer; Duration : Integer; Style : Integer; X, Y : glFloat;

dX, dY : glFloat; end;

Page 23: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Procedure SetupFirework// exploding particles for I :=0 to 127 do with Firework[N].Particle[I] do begin if Firework[N].Style < 2 then R := (random/6 +0.4)/10*EXPLOSION_SIZE else R := (random/10 -0.05)*EXPLOSION_SIZE; dX :=R*cos(I/10); dY :=R*sin(I/10); dZ :=R*cos(I/4); X :=dX; Y :=dY; Z :=dZ; if Clr = 0 then R :=random/3 + 0.7 else R :=random/3 + 0.4 if Clr = 1 then G :=random/3 + 0.7 else G :=random/3 + 0.4; if Clr = 2 then B :=random/3 + 0.7 else B :=random/3 + 0.4; end;

Page 24: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Struktur des Vortrags Zielsetzung/Motivation Entdeckung der Animation Starrkörperanimation Physikalische Simulation Partikelanimation Zusammengesetzte Strukturen /

Hierarchische Bewegung Verhaltensgesteuerte Animation

Page 25: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Zusammengesetzte Strukturen / Hierarchische Bewegung

Begriffsklärung: Articulated Structures Foward Kinematics Inverse Kinematics Motion Capturing

Page 26: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Articulated Structures (1) Objekte mit Gelenken Für die Animation eines solchen Objektes

muss zunächst eine skelettartige Struktur modelliert werden

Page 27: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Articulated Structures (2)

Eine Gelenkhierarchie muss festgelegt werden

Page 28: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Articulated Structures (3) Für jedes Gelenk müssen Freiheitsgrade

festgelegt werden Es gibt 6 Freiheitsgrade: Bewegung entlang der X-Achse, Y-Achse,

Z-Achse Roll: Rotation um X-Achse Pitch: Rotation um Y-Achse Yaw: Rotation um Z-Achse

Page 29: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Forward Kinematics (1)

Page 30: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Forward Kinematics (2)

Page 31: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Forward Kinematics (3)

Page 32: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Hierarchische Bewegung Forward Kinematics ist mit viel Aufwand

verbunden

Idee: Keyframing für Articulated Structures

Page 33: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Inverse Kinematics (1) Man gibt Keyframes des Objektes an Computer interpoliert dazwischenliegende

Frames Interpolation bleibt dem Skelettbau und den

Freiheitsgraden der Gelenke treu

Page 34: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Inverse Kinematics (2)

Page 35: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Inverse Kinematics (3) Selbst bei Strukturen mit wenigen Gelenken gibt

es oft verschiedene Wege einen Zielpunkt zu erreichen

Page 36: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Inverse Kinematics (4)

Kürzester Weg soll animiert werden Oftmals viele gleichwertige Lösungen Anzahl der Lösungen steigt exponential

mit höherer Anzahl an Gelenken

Page 37: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Inverse Kinematics (5) Vorteile: Schlüsselframes genügen zum erzeugen

einer animierten articulated Structure -> stark reduzierter Aufwand

Nachteile: Bei komplexen Strukturen (viele Gelenke)

Berechnung sehr aufwendig Entzieht künstlerische Freiheit

Page 38: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Motion Capturing (1) Einem Menschen (oder anderem Objekt

mit Skelettstruktur) werden an für die benötigte Bewegung wichtigen Stellen Sensoren angebracht

Der Mensch läuft diese Bewegung durch, während die Positionswerte der Sensoren aufgezeichnet werden

Auf dieser Basis lassen sich natürliche Bewegungen im Computer rekonsturieren

Page 39: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Motion Capturing (2) Beispiel eines real-time Motion Capturings

Man bemerke: Finger und Füße bleiben immer starr ausgerichtet

Page 40: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Motion Capturing (3) Vorteile: Menschliche Bewegungen mit

vergleichsweise niedrigem Aufwand in hoher Qualtät

Nachteile: Nur vorgefertigte Sequenzen

Page 41: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Struktur des Vortrags Zielsetzung/Motivation Entdeckung der Animation Starrkörperanimation Physikalische Simulation Partikelanimation Zusammengesetzte Strukturen /

Hierarchische Bewegung Verhaltensgesteuerte Animation

Page 42: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Verhaltensgesteuerte Animation

Animierte Figuren bewegen sich entsprechend ihres festgelegten Verhaltenskodex‘

Sind nur über diesen zu steuern, ähneln also Agenten

Nützlich für Computerspiele Nützlich zB für die Animation von

Tierherden (König der Löwen)

Page 43: Computeranimation Vortrag im Seminar Computergraphik Alan Akbik.

Fragen