Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Sa Jun 08, 2024 21:21

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Animaion von Objekten
BeitragVerfasst: Di Jan 15, 2013 23:00 
Offline
DGL Member

Registriert: Di Aug 21, 2012 19:31
Beiträge: 173
Programmiersprache: C#
Hey,

ich habe mich bisher noch überhaupt nicht mit dem Thema Animation auseinandergesetzt und konnte zumindest hier auf DGL kein passendes Tutorial dazu finden (Vermutlich weil diese Arbeiten normalerweise von Artists o.Ä. durchgeführt werden!?).

Mich würde trotzdem interessieren, wie Animationen in openGL im Groben realisiert werden.

Ich hatte gestern eine Idee, die zumindest das Zusammenspiel von Einzelobjekten (eines Modells) betrifft.
Man könnte Objekte in ihre beweglichen Teile zerlegen und so "zusammenbauen" das sie ein komplettes Modell darstellen.
Man stelle sich eine Windmühle vor: der Turm bildet das Hauptobjekt und ist statisch da es sich kaum bewegen wird; der Kopf ist sozusagen drehend auf dem Turm gelagert und kann mittels glRotate in die passende position gedreht werden (um die Rotoren in den Wind zu drehen); die Rotoren wären ein Kind-Element des Kopfes, damit auch diese bei Wind durch glRotete bewegt werden.
Zumindest wenn die Sub-Objekte nicht in sich animiert sein müssen, weil sich z.B. die Rotoren im Wind verbiegen, könnte man mit etwas Geschick mit glRotate und glTranslate und passendem Push- und PopMatrix was kleines zaubern lassen.

Mir kam die Idee als ich dieses Video des sich zusammenfaltenden V-22 Osprey sah: http://www.youtube.com/watch?v=_45aUrES-j0

Wird das so gemacht / ist das gängige Praxis?

Grüße!

_________________
ack nack nack nack nack


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animaion von Objekten
BeitragVerfasst: Di Jan 15, 2013 23:17 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Apr 13, 2011 22:05
Beiträge: 218
Programmiersprache: Lazarus/FPC
Das kommt drauf an

Bei so einfachen Dingen wie im Video oder die Mühle ist das auf alle Fälle so, alles andere ist nur unnötig komplizierter.
Wenn OpenGL schon so tolle Funktionen wie glRotate zur Verfügung stellt solltestdu sie auch so nutzen.

Animationen wie bei Personen-Modelle funktionieren anders, da verschiebst du die einzelnen Objektpunkte.
Eine Animation besteht aus einer Reihe sogenannter keyframes. Das sind Speicherpunkte die den Zustand eines animierten Objektes beinhalten.

Stell dir eine einfache Handanimation vor. Hand offen....Hand geschlossen zu einer Faust.
Das sind 2 keyframes, der erste gespeichert bei Sekunde 0 der Animation, der zweite bei Sekunde 2.
Und alles dazwischen wird von der game engine fürs aktuelle Frame automatisch berechnet, sodass die Hand bei Sekunde 1 halb geöffnet ist.

verwirrt?

Das wird schon!!!

_________________
Ich teile manchmal heimlich durch Null. - Alber Einstein


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animaion von Objekten
BeitragVerfasst: Mi Jan 16, 2013 13:59 
Offline
DGL Member

Registriert: Di Aug 21, 2012 19:31
Beiträge: 173
Programmiersprache: C#
Zitat:
verwirrt?


nö... klingt nach interpolation :D

_________________
ack nack nack nack nack


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animaion von Objekten
BeitragVerfasst: Mi Jan 16, 2013 15:21 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
Ja das geht schon. Leider siehts nur wirklich bei "mechanischen" Modellen gut aus. Also zum Beispiel Windmühle oder Kampfroboter. Bei vielen organischen Strukturen musst du
aber immer zwischen den "Gelenken" noch interpolieren (Stichwort: weighting). Mach dir am besten nen Vertexshader dann kannst du alle Fälle gut abdecken.

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Animaion von Objekten
BeitragVerfasst: Sa Jan 19, 2013 23:49 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7804
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Es gibt Modell-Formate die speichern die Animationen mit. D.h. du animierst in einem Tool, deine Figur, und kannst diese Animation dann im Code auslösen.
Hier im Forum haben einige Unerschrockene damals ein Format auf die Beine gestellt - hieß glaub ich Restless.

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 20 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.011s | 14 Queries | GZIP : On ]