§0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3...

46
§0-1 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Grundlagen-Ära der Computergrafik: - Start Anfang siebziger Jahre, bis Mitte achtziger Jahre - basierend auf technologischer Entwicklung der Rastergrafik-Hardware - erster Siegeszug der Computergrafik in der wissenschaftlichen und der high-end Anwendungsdomäne - Entwicklung von Algorithmen und Datenstrukturen für fotorealistische Bildsynthese und Modellierung von Objekten - Grundlagen heute benutzter Verfahren (z. B. Ray-Tracing) und Anwendungen (z. B. CAD-Systeme) aus dieser Zeit

Transcript of §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3...

Page 1: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-1

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.1 Historie

Grundlagen-Ära der Computergrafik:

- Start Anfang siebziger Jahre, bis Mitte achtziger Jahre

- basierend auf technologischer Entwicklung der Rastergrafik-Hardware

- erster Siegeszug der Computergrafik in der wissenschaftlichen und der high-end Anwendungsdomäne

- Entwicklung von Algorithmen und Datenstrukturen fürfotorealistische Bildsynthese und Modellierung von Objekten

- Grundlagen heute benutzter Verfahren (z. B. Ray-Tracing)und Anwendungen (z. B. CAD-Systeme) aus dieser Zeit

Page 2: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-2

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.1 Historie

Grundlagen-Ära der Computergrafik: (cont.)

- nach Basisfundierung ab den späten achtziger JahrenEntwicklung weiterführender Techniken und Anwendungen

- Notwendigkeit der Verwendung leistungsfähiger aber sehrteuerer Grafikrechner

Page 3: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-3

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.1 Historie

Anwendungs- und Anwender-Ära der Computergrafik:

- Start Ende der neunziger Jahre- basierend auf technologischer (und preislicher) Entwicklung

der PC-Hardware und Hochleistungs-3D-Grafikhardware- zweiter Siegeszug der Computergrafik in der

Anwendungs- und Anwenderdomäne- Algorithmen und Verfahren aus der Grundlagen-Ära

erfahren effiziente Hardware-Unterstützung bzw. Umsetzung

- low-level Software-Zugang:moderne Software-Schichten kapseln in Form von APIs,wie z. B. OpenGL, Direct3D oder Java3D, zunehmend höhereFunktionalitäten => Zugang eines breiten Kreises vonAnwendungsprogrammierern zu Computergrafikroutinen

Page 4: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-4

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.1 Historie

Anwendungs- und Anwender-Ära der Computergrafik: (cont.)

- high-level Software-Zugang:moderne Werkzeuge, wie z. B. 3D Studio Max oder Maya, ermöglichen den komfortablen Umgang mit Computergrafiktechniken für eine breite Anwenderschicht

- im Mittelpunkt der wissenschaftlichen Entwicklung stehendie Anwendungen der Computergrafiktechniken, insbesondere in speziellen Teilbereichen, wie z. B.

Visualization, Scientific Visualization, Information Visualization

Computer-Animation

Virtual Reality, Virtual Environments, Augmented Reality,Tele-Immersion

Page 5: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-5

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: Wo wird Computergrafik-Geschichtegeschrieben?

Es existieren zwei (konkurrierende) weltweit führende und jährlich stattfindende Computergrafiktagungen:

ACM SIGGRAPHSpecial Interest Group for Computer Graphics and InteractiveTechnologies

IEEE VISUALIZATION

Page 6: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-6

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: Was macht die Computergrafik heute eigentlich aus?

Zur Zeit versucht die ACM SIGGRAPH im Taxonomy Project eine umfassende Taxonomie der Computergrafik aufzustellen. Hier der aktuelle Stand des Projektes:

1. Grundlagen und Einführung(a) Das Pipeline-Modell der Computergrafik(b) Die virtuelle Kamera, Projektionen(c) Transformationen, Koordinatensysteme und Szenengraphen(d) Framebuffer

2. Geometrisches Modellieren(a) Grafik-Primitive (Punkt, Linie, Polygonzug, Dreieck, Polygon)(b) Polyeder und Quadriken(c) Rotationskörper

Page 7: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-7

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: (cont.)(d) Polygonale Netze, Dreiecks-Netze (Datenstrukturen und Algorithmen)

(e) Freiformgeometrie (Bézier, B-Splines und NURBS-Geometrie)(f) Subdivision-Geometrie(g) Implizites Modellieren(h) Solid Modeling (CSG, Raumteilungsmethoden)(i) Prozedurales Modellieren (Fraktale, L-Systeme, Partikelmodelle)

3. Die Bildberechnung - Rendering(a) Lokale Beleuchtungsmodelle(b) Globale Beleuchtungsmodelle(c) Interpolative Schattierungsalgorithmen(d) Globale und foto-realistische Methoden: Ray-Tracing und Radiosity

i. Schattenwurf, Reflektionenii. Grundlagen des Ray-Tracingsiii. Fortgeschrittene Ray-Tracing Algorithmen, Implementierungiv. Radiosityv. Radiosity-Ray-Tracing

Page 8: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-8

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: (cont.)(e) Texturen

i. Texture Mappingii. Zwischenabbildungeniii. Anti-Aliasing und Filteriv. Bump Mappingv. Environment Mappingvi. Shadow Mappingvii. Mip-Mappingviii. 3D Texturen

(f) Alternative Methodeni. Nicht-foto-realistische Darstellungii. Volumengrafikiii. Image-Based-Rendering

4. Display-Algorithmen(a) Scanline-Algorithmus(b) Double Buffering

Page 9: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-9

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: (cont.)(c) Sichtbarkeit

i. Verdeckte Kanten und Flächenii. Tiefenpufferiii. Ray-Tracing

(d) Clipping(e) Culling(f) A-Buffer, Stencil-Buffer & Co.

5. Grafik-Hardware(a) Eingabegeräte (Maus, Stift, 3D Scanner, haptische Eingabe)(b) Ausgabegeräte (Farbsysteme, Rasterbildschirm, LCD-Technik,

Head-Mounted-Display, CNC, STL-Ausgabe)(c) Grafikkarten

6. Grafik-Software(a) Software-Architekturen(b) VRML

Page 10: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-10

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: (cont.)(c) Quicktime VR

(d) RenderMan und BMRT(e) Application Programming Interfaces

i. OpenGLii. Direct3Diii. Java3D

7. Visualisierung(a) Das Pipeline-Modell der Visualisierung(b) Grundlegende Algorithmen und Datenstrukturen der Visualisierung(c) Wissenschaftliches Visualisieren(d) Informationsvisualisierung(e) Volumenvisualisierung in der Medizin(f) Visualisierung in der Strömungsdynamik(g) Visualisierung in der Bio-Informatik

Page 11: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-11

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.2 Überblick

Der aktuelle Stand: (cont.)8. Computer-Animation

(a) Grundbegriff der Animation(b) Keyframing(c) Kinematik und Kinetik in der Computeranimation(d) Character Animation(e) Prozedurale Animation

9. Virtuelle Welten(a) Virtual Reality (Hardware, Software, Architekturen)(b) Computergames(c) Realtime-Grafik

Wir geben im Folgenden einen kurzen Überblick über gängige Grafik-Software (Werkzeuge, Sprachen und Standards) und werden später exemplarisch näher auf die OpenGL-API eingehen.

Page 12: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-12

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

Softimage|3D

Modellierung, Animation, Rendering und Produktion im professionellen Bereich, benutzt MentalRay als Ray-Tracer.

Hersteller: Avid Technology Inc.

Homepage: www.softimage.com

Einsatz in Filmen: The Lost World: Jurassic Park, The Matrix, Star Wars: The Phantom Menace, Godzilla,Gladiator

Einsatz in Games

Plattform: SGI, Windows

Preis: sehr hoch

Page 13: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-13

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

3D Studio Max

Modellierung, Animation, Rendering und Produktion im professionellen Bereich

Hersteller: Autodesk (www.autodesk.com)

Homepage: www.discreet.com/products/3dsmax/

Einsatz in Filmen: Driven, Dungeons & Dragons, The Lost World: Jurassic Park

Einsatz in Games: Tomb Raider 2, Myst, Age of Empires II,SimCity 3000

Plattform: Windows

Preis: hoch

Page 14: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-14

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

3D Studio Max (cont.)

Page 15: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-15

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

Maya

Modellierung, Animation, Rendering und Produktion im professionellen Bereich

Hersteller: Alias|Wavefront, division of Silicon Graphics Lt.(www.aliaswavefront.com)

Homepage: www.aliaswavefront.com/WhatWeDo/maya/

Einsatz in Filmen: Lord of the Rings Trilogy, Enemy at the Gates

Einsatz in Games: Gran Turismo 3, Madden NFL 2001

Plattform: Windows

Preis: sehr hoch

Page 16: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-16

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

Maya (cont.)

Page 17: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-17

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

Rhinoceros 3D, Rhino

CAD-Anwendung, Modellierung mit Freiformkurven und -flächen

Hersteller: Robert McNeel & Associates(www.mcneel.com)

Homepage: www.rhino3d.com

Einsatz bei:Airbus Industries, BMW AG, Daimler Chrysler, Ford, Honda, Hyundai, LEGO, Microsoft, Miele, Nike, Nintendo, Nokia, Toyota, US Army Research, US Air Force, Walt Disney, Yamaha

Plattform: Windows

Preis: niedrig bis mittel

Page 18: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-18

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

Rhinoceros 3D, Rhino (cont.)

Page 19: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-19

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.3 High-level Anwender-Werkzeuge

Lightscape

Professioneller Radiosity-Renderer

Hersteller: Autodesk

Homepage: www.lightscape.com

Preis: mittel bis hoch

Page 20: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-20

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.4 Low-level Anwender-Werkzeuge

POVRAY (Persistence of Vision Ray-Tracer)

Raytracer mit Radiosity-Erweiterung

Homepage: www.povray.org

Plattform: Windows, DOS, Macintosh, Linux, SunOS

Preis: freeware, source code!

BMRT (Blue Moon Rendering Tools), RenderMan, Entropy

Kommerziell eingesetzter Renderer

Homepage: www.bmrt.org

Einsatz bei: ILM, Pixar (A Bug's Life, The Cell, Hollow Man)

Preis: BMRT (zero for non-profit use); aber: das war einmal…

Page 21: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-21

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.4 Low-level Anwender-Werkzeuge

VTK – The Visualization Toolkit

Objektorientierte Visualisierungsbibliothek (C++ Klassen, TCL Skript-Sprache, Java bindings) mit Standard- und fortgeschrittenen Algorithmen (z. B. contouring, surface smoothing, triangulation) für alle Arten der 3D-Datenvisualisierung.

Hersteller: Kitware Inc. (www.kitware.com)

Homepage: www.kitware.com/vtk/

Preis: zero for non-profit use

Page 22: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-22

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Es existieren unübersehbar viele Grafikschnittstellen (3D-APIs), -sprachen und –standards auf unterschiedlichen Abstraktionsniveaus für viele verschiedene Einsatzgebiete.Folgende gelten als etabliert:

OpenGL (basiert auf IRIS GL)

Open InventorVRML (3D-Beschreibungssprache, kein API!)

Open Performer (ehemals IRIS Performer)OpenGL OptimizerOpenGL Volumizer

Java3D

DirectX, Direct3D

Page 23: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-23

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Überblick:

InventorPerformerOptimizer

Operating System

OpenGLDirect3D, DirectX

Quickdraw3D (Mac)

Java3DVolumizer

Java3D

Application

Page 24: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-24

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Begriffe:

Immediate Mode:

- direkter Modus, alle Aktionen werden direkt ausgeführt- low-level, d.h. keine bis schwache Abstraktion- fast kein Raum mehr für Optimierung- Primitive: Punkte, Linien, Dreiecke, ...

Retained Mode:

- indirekter Modus, zuerst wird ein „Szenengraph“ konstruiert- Elemente die sich ändern werden spezifiziert- abstrakterer Level- höherwertige Primitive: Kugeln, Quader, Prismen, ...

Bemerkung: Vorsicht, Bezeichnungen werden unterschiedlich verwendet!

Page 25: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-25

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

OpenGL

- Open Graphics Library, entwickelt 1992, aktuelle Version 1.2

- Quasi-Industriestandard, gut dokumentiert, stabil, skalierbar, ständige Weiterentwicklung

- prozedurales low-level API für 2D und 3D Grafik

- Oberflächen- und Betriebssystemunabhängig

- mehr als 150 Funktionen für

Rendering,

Texturen,

Modellierung,

Transformationen,

...

Page 26: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-26

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

OpenGL (cont.)

- nutzbar mit C, C++, Fortran, Ada, Java unter Windows, X-Windows und Mac-OS

- Einsatzbereiche:

3D Animation, CAD, Virtuelle Welten, Simulationen,...

- Referenzimplementierung von SGI unter oss.sgi.com

Page 27: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-27

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Open Inventor

- objektorientiertes Toolkit für interaktive 3D-Grafikanwendungen

- entwickelt von SGI, 1992

- basiert auf OpenGL

- definiert Modelle mittels eines Szenengraphen mit Primitiven wie Würfel, Polygone, NURBS, ...

- stellt Fensterverwaltung zur Verfügung (nur X-Windows)

- definiert ein Dateiformat für den Datenaustausch

- event-basierte Modellierung für 3D Interaktion,Mechanismen für animierte Objekte (engines) und Picking

- plattformunabhängig, Unterstützung von Crossplattformentwicklung

Page 28: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-28

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Open Inventor (cont.)

Beispiel: Szenengraph

Page 29: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-29

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

VRML

- Virtual Reality Modeling Language

- Entwicklung:

1992 Inventor (Open Inventor)

1994 VRML Idee (Erweiterung von HTML)

1995 VRML 1.0 Standard (Submenge von Open Inventor)

1996 VRML 2.0 Entwurf (nicht kompatibel zu VRML 1.0)

(erweiterte Objekte, neue Syntax, Prototyping)

1997 VRML97 Standard, ISO/IEC 14772-1997

- als reine Beschreibungssprache (keine API) für komplexe und interaktive 3D-Welten entwickelt

Page 30: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-30

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

VRML (cont.)

- Ziel: 3D fürs Internet

- Viele Objekte, die in 3D-Applikationen verwendet werden, wurden in den Standard übernommen:

- hierarchische Transformationen,- Lichtquellen,- Sichtdefinitionen,- Geometrie,- Animation,- Nebel,- Materialeigenschaften, Texturen,- ...

Page 31: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-31

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

VRML (cont.)

- Programmierzugriff mittels JavaScript/VRMLScriptoder mittels Java über das EAI (External Authoring Interface)

- Es werden Autorenwerkzeuge und Viewer benötigt, damit die Welten lebendig werden.

- Viewer: Blaxxun, CosmoPlayer (www.cosmosoftware.com), ...

- Java3D bietet Leseroutinen für VRML 2.0

- Nachfolger ist die Beschreibungssprache X3D, welche auf XML basiert

- Der VRML-Szenengraph ist Grundlage für die Szenenbeschreibung im aktuellen MPEG-Standard.

Page 32: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-32

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

VRML (cont.)

Beispiel: Szenengraph

Page 33: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-33

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Open Performer

Motivation:

Typische VR-Anwendungen verlangen die Einhaltung einer bestimmten Reaktionszeit (<1s, typ. 100ms) und einer minimalen Bildwiederholrate (typ. 15fps). Dies stellt Voraussetzungen an die Durchlaufzeiten durch die Rendering-Pipelines. Beispiele:

- HMD (Head Mounted Display), Datenhelm (ein Display pro Auge),

- CAVE (Computer Aided Virtual Environment)Raum, auf dessen Wände die generierten Bilder projiziert werden

Oft wird eine hohe Bildrate durch die Verwendung von mehreren Rendering-Pipelines erkauft. Dann ist die Berechnung des aktuell sichtbaren Bildes aber schon einige Bilder vorher gestartet worden.

Page 34: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-34

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Open Performer (cont.)

- API, die auf OpenGL aufsetzt und weitere Funktionalitäten zur Verfügung stellt

- ursprüngliches Ziel: maximale Grafik Performance für die SGI Produktlinie

- optimiert für den Einsatz in Virtual Reality (VR) Umgebungen,echtzeitfähig, multithreaded, interaktiv

- Einsatzbereiche: Visuelle Simulation, Virtual Reality, CAD-Systeme, Spielentwicklung

- Mechanismen für transparentes Multiprozessing und effiziente Nutzung von mehreren/parallelen Prozessoren, Videokanälenund Grafikpipelines ohne Codeänderungen.

Page 35: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-35

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Open Performer (cont.)

- feste Framerate einstellbar für immersive Applikationen

- eigene Datenstruktur für schnelles Laden

- Behandlung von großen Texturen mit bis zu 8*106 x 8*106 Texels

- Verfügbarkeit: SGI Rechner, Linux (!)

Page 36: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-36

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

OpenGL Optimizer

- Visualisierungsbibliothek für sehr große Modelle

- vorwiegend für den Konstruktionsbereich gedacht (digital prototyping)

- nutzt Cosmo3D Szenengraph (Szenengraph für VRML, entwickelt für CosmoPlayer)

- bietet volle Kontrolle über:

Topologie (z. B. boundary representation),Netzvereinfachung (mesh simplification),Tesselierung

Page 37: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-37

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

OpenGL Optimizer (cont.)

Architektur:

Page 38: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-38

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

OpenGL Volumizer

- high-level API für Volumendarstellung

- Programmiersprache ist C++

- Rechnerplattformen SGI O2, Octane, Onyx2

- Darstellung und Manipulation von großen Volumendatensätzen für Medizin-, Energie- und Wissenschaftsmarkt

- high- und low-level Funktionalitäten sind nutzbar

- kompatibel mit Open Inventor und Open Performer:Mischen von Objekten möglich,Volumenverformung,Definition von ROI (Region Of Interest) mit Hilfe von Shapes

- Datenmengen im Rahmen von mehreren 100 GB

Page 39: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-39

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Java3D

Mit Suns großem Erfolg der Java-Programmiersprache wurde nach kurzer Zeit auch der Ruf nach einer API für 3D laut.

Zusammen mit Intel, SGI, Apple (damals noch ohne MS) entwickelte Sun eine Grafikbibliothek, welche die Anforderungen an eine moderne Java-3D-API erfüllen sollte.

- Plattformen (heute): AIX, HP-UX, Linux, SGI (IRIX), Solaris, Windows

- Anwendungsgebiete: Simulationen,Spiele,CAD,Scientific Visualization,VR Systeme

Page 40: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-40

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Java3D (cont.)

- Java3D definiert kein eigenes externes Dateiformat (es ist aber eine Serialisierung der Java-Objekte möglich)

- run-time Lademechanismen

- besondere Features:

immediate mode,retained mode,compiled retained mode,double-buffering,z-buffer rendering model

- unterstützt high-end Rendering Umgebungen (CAVE, HMD, ...)

- unterstützt 3D-Eingabegeräte

Page 41: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-41

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Direct3D

- 3D-API, beschränkt auf Windows-basierte Computer

- Teil von DirectX, das alle Multimedia-Belange abdecken soll

- Gedacht für Spiele, Multimedia-Anwendungen und interaktive 3D-Grafik

- Features:umschaltbare Tiefenbuffer,Flat- und Gouraudschattierung,mehrere Lichtquellen und –typen,Material- und Texturunterstützung,Transformation und Clipping,robuste Emulationstreiber überbrücken fehlende Hardwarefunktionalität

Page 42: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-42

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.5 Werkzeuge für Anwendungsprogrammierer

Direct3D (cont.)

Architektur:

Component

Retained Mode (RM)

Immediate Mode (IM)

(HEL)

HAL

Graphics hardware

Hardware Emulation Layer(software drivers that act like hardware)

Hardware Abstraction Layer(software drivers that communicate between SW and HW)

DIRECT3D

DirectX Media Layer

DirectX Foundation Layer

DirectShowDirectAnimation

DirectDrawDirect3D Direct3DXDirectInputDirectSoundDirectSound3DDirectPlayDirectMusic

Page 43: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-43

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.6 Literatur und mehr...

Allgemeine Literatur zur Veranstaltung:

[WAT00] Watt A.: 3D Computer Graphics, Addison-Wesley, third edition, 2000.

[WAT02] Watt A.: 3D-Computergrafik, Addison-Wesley, Übersetzung der dritten Auflage, 2002.

[WAT92] Watt A., Watt M.: Advanced Animation and Rendering Techniques, Addison-Wesley, 1992.

[ANG97] Angel E.: Interactive Computer Graphics – A top-downapproach with OpenGL, Addison-Wesley, 1992.

[WOL00] Wolfe R.: 3D Graphics – A Visual Approach, Oxford University Press, 2000.

[FOL97] Foley J., van Dam A., Feiner S., Hughes J.: Computer Graphics – Principles and Practice, Addison-Wesley, second edition, 1997.

Page 44: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-44

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.6 Literatur und mehr...

Web-Ressourcen:

- ACMhttp://www.siggraph.org/

- IEEE Technical Committee on Visualization and Graphicshttp://www.computer.org/tab/tclist/tcvg.htm

- EG European Association for Computer Graphicshttp://www.eg.org/

- Gesellschaft für Informatik, Fachausschuss 4.1 Graphische Datenverarbeitunghttp://www.informatik.uni-leipzig.de/gifa41/

Page 45: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-45

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.6 Literatur und mehr...

Lesenswert:

[BLI96] Blinn J.: Jim Blinn‘s Corner - A trip down the graphicspipeline, Morgan Kaufmann, 1996

[DOD97] Dodsworth: Digital Illusion - Entertaining the Future with High Technology, Addison-Wesley, 1997.

[TUF97] Tufte: Visual Explanations - Images and Quantities, Evidence and Narrative, Graphics Press, 1997.

[BLI98] Blinn J.: Jim Blinn's Corner - Dirty Pixels, Morgan Kaufmann, 1998.

Page 46: §0 Historie, Überblick, Grafik-Software 0.1 Historiedannen/HTW_Vorlesung/Kapitel00.pdf · §0-3 §0 Historie, Überblick, Grafik-Software Computergrafik - SS 2004 0.1 Historie Anwendungs-

§0-46

§0 Historie, Überblick, Grafik-Software

Computergrafik - SS 2004

0.6 Literatur und mehr...

Hierauf bauen große Teile der Vorlesung auf: