Was ist DirectX

Werbung
ComGraphik
DirectX vs. OpenGL
13.07.2005
vs.
Von Patrick Schmid und Christian Piwecki
ComGraphik
DirectX vs. OpenGL
13.07.2005
Übersicht
Graphikengines
Schnittstellen für Graphikengines
Grafikschnittstelle OpenGL
Grafikschnittstelle DirectX
Unterschiede DirectX und OpenGL
Programmierbeispiel Würfel OpenGL
Programmierbeispiel Würfel DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
DirectX vs. OpenGL
ComGraphik
13.07.2005
Graphikengines
Basieren auf einer Grafikschnittstelle
(z.B. DirectX, OpenGL, …)
Eigenständiger Programmteil
Erleichtern Darstellung von
Computergrafik
Grafikengines
Standardfunktionen bereits
implementiert
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Graphikengines
Funktionen einer Grafikengine
Geometrische Objektbeschreibung
Oberflächentexturen
Licht und Schatten
Transparenz
Grafikengines
Spiegelungen
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Partikelsysteme
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Graphikengines
Funktionen einer Grafikengine
Beinhaltet Großteil der Viewpipeline
 Erstellt Objekt im Modelling Coordinate System
 Transformiert dieses ins World Coordinate System
 Führt View Mapping durch
Grafikengines
Beinhaltet bereits implementierte Vertex- und
Pixelshader
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Graphikengines
Bewertung einer Grafikengine
Gute Graphikengine zeichnet sich aus durch:
 Schnelligkeit -> extrem aufwändige Optimierungen
der Berechnungen
 große Anzahl bereits implementierter Funktionen
 schönes Ergebnis
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
DirectX vs. OpenGL
ComGraphik
13.07.2005
Meilensteine
Doom I-III
id Software 1993-2004
Doom
Engine
Quake I-VI
id Software 1994-2005?
Quake
Engine
Unreal I-III
Epic Games 1999-2006 ?
Unreal T.
Epic Games 1999-2006?
Farcry
Crytek 2004-2005?
Cry
Engine
Half Life
Valve 1997
Quake
Engine
Half Life²
Valve 2004-2005?
Source
Engine
Unreal
Engine
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Schnittstellen für Graphikengines
Definition
Große Programmbibliothek mit elementaren
Funktionen
Implementiert als API
(Application Programming Interface)
plattformunabhängig
Grafikengines
programmiersprachenunabhängig
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Schnittstellen für Graphikengines
Bekannte Schnittstellen für Graphikengines
OpenGL
DirectX
Quickdraw3D (Apple)
Glide (3DFx)
Java3D (sun)
Grafikengines
Mesa (ähnlich OpenGL)
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Warp3D (Amiga)
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
Geschichte
Vorgänger: IrisGL von SGI (1980)
Ziel: portierfähige Graphic Library
ARB (Architecture Review Board) an
Entwicklung von OpenGL beteiligt
Zur ARB gehören u.a.:
Grafikengines
3D Labs, ATI, Apple, Dell, HP, Matrox, nVidia,
IBM, Intel, Microsoft (bis März 2003), Silicon
Graphics, Digital Equipment (DEC), Evans &
Sutherland und Intergraph
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
Geschichte
1992 erscheint OpenGL 1.0
seit 7. September 2004 OpenGL 2.0
OpenGL ist OpenSource
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
OpenGL - Bibliotheken
GLX
Schnittstelle zwischen OpenGL und X-Windowsystem
WGL
Schnittstelle zwischen OpenGL und Windows
AGL u. CGL
Schnittstelle zwischen OpenGL und MAC
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
OpenGL - Bibliotheken
GLUT (OpenGL Utility Toolkit)
Umfangreiche Bibliothek die Methoden zur
Fenstererzeugung sowie zum Input – Handling beinhaltet
Java3D
API für Java um 3D Anwendungen für Java2 Environments
zu entwickeln
OpenAL
Grafikengines
Open Audio Library
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
IDE Konfiguration
Include – Dateien:
 gl.h
 glu.h
 glux.h
Libraries für Linker:
 OpenGL32.lib
 GLu32.lib
 GLaux.lib
Grafikengines
glaux.dll im gleichen Verzeichnis
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
Die GLUT - Library
glutInit(&argc, argv);
Initialisiert die GLUT Library
glutInitWindowSize(int width, int height);
Setzt die Größe des Fensters
glutInitWindowPosition(int x, int y);
Setzt die Position des Fensters
glutCreateWindow( ¨WindowTitle¨);
Erstellt das Fenster mit dem Parameter als Titel
glutDisplayFunc(display);
Deklariert die Funktion die für den Fensterinhalt verantwortlich ist
Grafikengines
glutReshapeFunc(reshape);
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Deklariert die Funktion die aufgerufen wird, wenn das Fenster in
der Größe verändert, bewegt oder minimiert/maximiert wird.
Unterschiede DX & OGL
glutMainLoop();
Verhindert dass das Fenster gleich wieder beendet wird
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
Erzeugung von Grafik
Bevor Grafik angezeigt werden kann muß erst ein
Fenster vorhanden sein
OpenGL muß mit dem Window Context (DC) und dem
Device Context (WC) verknüpft werden
Unterscheidung in 2 Arten von Funktionen:
1. Funktionen die die OpenGL – Engine konfigurieren
2. Funktionen die zu zeichnende 3D Objekte definieren
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
OpenGL – Engine konfigurieren
Mit glEnable(FLAG); Flag aktivieren
Mit glDisable(FLAG); Flag deaktivieren
Es gibt Flags für:
 Verschiedene Filter
 Z-Buffer
 Alphatest
 Dithering
 Blending
 Lichtquellen
 Zeichenstil für Linien
 uvm.
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
OpenGL – Engine konfigurieren
Beispiele:



glEnable(GL_LIGHT1);
aktiviert Lichtquelle 1
glEnable(GL_DEPTH_TEST); aktiviert Z-Buffer
glEnable(GL_DITHER);
aktiviert Dithering
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
3D – Objekt definieren
Zu zeichnende Elemente werden immer mit
 glBegin(MODE); begonnen
 glEnd(); beendet
Dazwischen werden z.B.
 Punkte gesetzt
 Farben zugeordnet
 Texturkoordinaten zugeordnet
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
3D – Objekt definieren
Modes:










glBegin(GL_TRIANGLES);
glBegin(GL_QUADS);
glBegin(GL_POLYGON);
glBegin(GL_POINTS);
glBegin(GL_LINES);
glBegin(GL_LINE_STRIP);
glBegin(GL_LINE_LOOP);
glBegin(GL_TRIANGLE_STRIP);
glBegin(GL_TRIANGLE_FAN);
glBegin(GL_QUAD_STRIPS);
Grafikengines
Punkt definieren:
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX

Unterschiede DX & OGL
glVertex3f(0.0f, 0.0f, 0.0f);
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
3D – Objekt definieren
Beispiel:
glBegin(GL_TRIANGLES);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex2f(0.0f, 0.0f);
glVertex2f(1.0f, 0.0f);
glVertex2f(0.0f, 1.0f);
glEnd();
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Ergebnis: rotes Dreieck
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle OpenGL
Sonstige Funktionen
glLoadIdentity();

Sprung zurück zum Ursprung
glTranslatef(x, y, z);

Verschiebt um x, y, z
glRotatef(winkel, x, y, z);

Rotiert um entsprechende Achse
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
DirectX vs. OpenGL
ComGraphik
13.07.2005
Grafikschnittstelle DirectX
Kurze Geschichte
Von Microsoft entwickelt
1. Game SDK -> Windows 95
Umbenannt in DirectX SDK
Was ist DirectX ?
Einheitliche, geräteunabhängige Schnittstelle
Enthält Ansammlung versch. Komponenten zur
Multi-Media Entwicklung unter Windows
Sicherheit für Programmierer für Lauffähigkeit
unter allen Windows-Systemen
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
DirectX vs. OpenGL
ComGraphik
13.07.2005
Grafikschnittstelle DirectX
Leistungsfähigkeit
Besteht aus zwei Schichten: HAL und HEL
HAL: Hardware Acceleration Layer
= Funktionen die direkt von HW unterstützt werden
HEL: Hardware Emulation Layer
= Funktionen die HW nicht direkt unterstützt
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
DirectX vs. OpenGL
ComGraphik
13.07.2005
Grafikschnittstelle DirectX
DirectX besteht aus folgenden Komponenten
DirectSound -> HW beschleunigtes Mixen von Sound
DirectMusic -> Wiedergabe und Komposition von Musik
DirectShow -> Abspielen von Multimediadateien
DirectInput -> Für Eingabegeräte
Grafikengines
Direct3DX Utility Library -> Funktionen für Direct3D
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
DirectPlay
Unterschiede DX & OGL
-> Unterstützung für Netzwerkverbindungen
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
Direct3D
Geometrietransformationen
(Bewegung, Skalierung,Rotation)
Beleuchtung
Texturierung
DirectDraw
Direkter Zugriff auf Grafikkarte und Bildspeicher
Schnelles Verschieben zwischen Grafikkarte und
Hauptspeicher
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
DirectX vs. OpenGL
ComGraphik
13.07.2005
Grafikschnittstelle DirectX
Arbeiten mit Direct3D
Einbinden des Header d3d9.h
Einbinden der Library d3d9.lib
Richtige DirectX Version überprüfen
D3D_SDK_VERSION
Desktopmodus festlegen
GetAdapterDisplayMode
Front & Backbuffer einstellen
D3DSWAPEFFECT_DISCARD
Device einstellen
D3DDEVTYPE_HAL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Objekte aus Arbeitsspeicher entfernen !
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
Grundlegende Funktionen
LPDIRECT3D9
Erstellen eines Direct3D Objekts
LPDIRECT3DDEVICE
Rendering Schnittstelle definieren
D3DPRESENT_PARAMETERS
Um Rendering Schnittstelle zu erstellen hier
definieren
UINT Adapter
Welche Grafikkarte verwenden
D3DDEVTYPE_HAL
Hardwarebeschleunigung benutzen
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
Grundlegende Funktionen
DrawPrimitive
Zeichnet über Vertices angegebene Objekt
! Direct3D speichert Vektordaten in Vertex Buffer
Punktlisten -> Jeder Punkt wird einzeln ausgegeben
Linienlisten -> Je 2 Punkte durch Linie verbunden
Dreieckslisten -> Je 3 Punkte zu einem Dreieck
Dreiecksfächer -> Alle Punkte spannen mit 1. einen
Fächer auf
Dreiecksstreifen -> Punkte werden der Reihe nach
als breiter Streifen aus Dreiecken
dargestellt
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
Punktliste (D3DPT_POINTLIST)
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Linien-Liste (D3DPT_LINELIST)
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
Dreieck-Liste (D3DPT_TRIANGLELIST)
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Dreieck-Fan (D3DPT_TRIANGLEFAN)
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
Dreieck-Strip (D3DPT_TRIANGLESTRIP)
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Grafikschnittstelle DirectX
D3DVERTEX g pvTriangleVertices[3];
D3DVEKTOR p1{0.0f,3.0f,0.0f};
D3DVEKTOR p2{3.0f,-3.0f,0.0f};
D3DVEKTOR p3{-3.0f,-3.0f,0.0f};
g pvTriangleVertices[0]=D3DVERTEX(p1, vNormal,0,0);
g pvTriangleVertices[1]=D3DVERTEX(p2, vNormal,0,0);
g pvTriangleVertices[2]=D3DVERTEX(p3, vNormal,0,0);
pd3dDevice->DrawPrimitive(D3DPT TRIANGLELIST
,D3DFVF VERTEX,g pvTriangleVertices,3,NULL);
Die Eckpunkte des Dreiecks sind mit D3DVEKTOR gegeben.
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Unterschiede DirectX & OpenGL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel OpenGL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel OpenGL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel OpenGL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel OpenGL
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Programmierbeispiel Würfel DirectX
Grafikengines
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
ComGraphik
DirectX vs. OpenGL
13.07.2005
Fazit
Gleichwertige Ergebnisse
Bessere Performance nur durch optimierten
Quellcode
Wichtiger Vorteil von OpenGL gegenüber DirectX
-> Plattformunabhängigkeit
Für Anfänger OpenGL viel besser geeignet
Grafikengines
Tendenziell mehr Software (SPIELE)
unter DirectX als unter OpenGL
IF für Grafikengines
Gra. IF. OpenGL
Gra. IF. DirectX
Unterschiede DX & OGL
Prog.Bsp. OpenGL
Prog.Bsp. DirectX
Fazit
Patrick Schmid
Christian Piwecki
12.Info
Vielen Dank für die Aufmerksamkeit !
Noch Fragen ?
Herunterladen