3D-Computergrafik
3D-Computergrafik
3D-Computergrafik
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Durchführung von Animation<br />
Lösungsansatz :<br />
• wiederholtes Neuzeichnen bei sich schrittweise ändernden Bezugspunkten oder<br />
Objekteigenschaften (Abmessungen / Farbe / Form )<br />
• z.B. Bewegung eines Objektes entlang einer Linie im Raum durch Transformation der<br />
Objektpunkte mittels einer Translationsmatrix<br />
• Auch Zusammenfassung mehrerer Transformationen durch einmalige Multiplikation<br />
der Matrizen miteinander und nachfolgender Anwendung auf die Punkte<br />
Probleme / Anforderungen<br />
• gleitende, ruckfreie Bewegungsdarstellung erfordert sehr kleine<br />
Bewegungsinkremente und damit sehr häufiges Neuzeichnen<br />
• Messung der Anzahl von Neu-Zeichnungen in Frames per second (Fps) – eine<br />
Meßgröße bei <strong>3D</strong>-Grafikkarten anhand von Referenzanimationen – Ziel ca. 25 Fps<br />
• Neuaufbau des Bildes würde bei großen Szenen (bzw. kleiner Fps-Wert) zu starken<br />
Störungen führen -> Konzept eines doppelten Bildschirmspeichers (Dopple<br />
Buffering) :<br />
• es werden abwechselnd der erste oder zweite Speicher neu gezeichnet<br />
• nach Abschluß des Zeichens wird nur die Startadresse des Speicherauslesens<br />
umgeschaltet und damit das neue Bild gezeigt<br />
• das nächste Bild wird immer anderen Speicherteil gezeichnet<br />
Grafikprogrammierung Teil 1 - Prof. T.Wiedemann - HTW Dresden - Folie 11<br />
Verfügbare <strong>3D</strong>-Technologien<br />
• Die Komplexität aber auch die gute Wiederverwendbarkeit der Basisalgorithmen<br />
machen eine Eigenentwicklung von <strong>3D</strong>-Basissoftware heute kaum noch notwendig<br />
bzw. sinnvoll !<br />
• auch im Interesse einer Austauschfähigkeit der Grafikdaten sollten einige der<br />
nachfolgenden Industriestandards verwendet werden.<br />
Highend-<strong>3D</strong>-Programmierung :<br />
• in 80er Jahren erste, meist herstellerabhängige Funktionsbibliotheken<br />
• OpenGL – Bibliothek mit allen notwendigen Datenstrukturen und<br />
Transformationsfunktionen für 2D- und <strong>3D</strong>-Darstellungen<br />
wurde ursprünglich von Silicon Graphics (SGI) für eigene Grafik-Workstations als<br />
hardware-unabhängige Schnittstelle für <strong>3D</strong>-Grafikprogrammierung entwickelt<br />
1992 Zusammenschluss von wichtigen Grafikworkstation-Herstellern wie SGI, Sun,<br />
Hewlett-Packard, Microsoft und anderen zum OpenGL Architectural Review Board<br />
(ARB) zwecks gemeinsamer Weiterentwicklung<br />
heute wichtigste, professionelle Schnittstelle für <strong>3D</strong>-Programmierung !<br />
für die Internetpräsentation wurde 1995 von OpenGL ein neues, XML-basiertes<br />
Textformat abgeleitet - VRML, konnte sich aber noch nicht breit durchsetzen<br />
unter Windows wurde von Microsoft die DirectX-Schnittstelle entwickelt<br />
für 2D-Grafiken wurde 2002 das einfache und schnellere SVG-Format definiert<br />
Grafikprogrammierung Teil 1 - Prof. T.Wiedemann - HTW Dresden - Folie 12<br />
6