CGSG/Workshop
Einführung in Computergraphik/OpenGL
von kyrah
OpenGL (Open Graphics Library) ist eine Spezifikation für ein plattform- und programmiersprachenunabhängiges API (Application Programming Interface) zur Entwicklung von 3D-Computergrafik. Der OpenGL-Standard beschreibt etwa 250 Befehle, die die Darstellung komplexer 3D-Szenen in Echtzeit erlauben. --Wikipedia
Nächster Termin (Fortsetzung)
- Wann: Samstag, 29. September 2007, 16:00
- Wo: Metalab, Rathausstrasse 6, 1010 Vienna
Inhalt
- Beleuchtung
- Texturierung
- Modelle laden
- Vertex Arrays und VBOs
Ich war beim ersten Termin nicht da, kann ich trotzdem noch einsteigen?
Ja, klar!
Was wir bisher gemacht haben, siehst du in den Folien und den dazugehörigen Code-Beispielen (siehe unten), bei Fragen dazu einfach mit mir Kontakt aufnehmen.
Hausaufgabe ;)
Sonnensystem (Sonne, mind. 3 Planeten, mind. einer davon mit Mond...)
Hinweis: eine Kugel kann man z.B. wie folgt zeichnen:
void drawSphere(float radius, GLint slices=20, GLint stacks=20) { GLUquadricObj* q = gluNewQuadric(); gluQuadricDrawStyle (q, GLU_FILL); gluQuadricNormals (q, GLU_SMOOTH); gluSphere (q, radius, slices, stacks); gluDeleteQuadric(q); }
Unterlagen
Vortrag
Präsentation:
Teil 1 (15.9.2007) – PDF, 1052kB
Code-Beispiele:
- Makefile – Achtung, muss für euer System angepasst werden:
- Mac OS X mit SDL als framwork:
CFLAGS = SDLMain.m
undLIBS = -framework SDL -framework Cocoa -framework OpenGL
- Unix (inkl. Mac OS X mit SDL als .dylib):
CFLAGS = `sdl-config --cflags`
undLIBS = `sdl-config --libs` -lGL -lGLU
- Mac OS X mit SDL als framwork:
- 01_basicsdl.cpp SDL "Rahmen-Applikation"
- 02_triangle.cpp weißes Dreieck auf schwarzem Hintergrund
- Perspektive
- 03_proj_ortho.cpp orthographische Projektion
- 03_proj_persp.cpp perspektivische Projektion
- 3 Varianten, ein Dreieck zu verschieben:
- 04_transtri1.cpp Vertices modifizieren
- 04_transtri2.cpp glTranslatef()
- 04_transtri3.cpp Kamera-Position verändern
- 05_tricolor.cpp Dreieck in Farbe
- 06_3ddrawing.cpp 3D-Aufgabe "Haus"
Nate Robins' Tutorials
Die von mir gezeigten Demos zu Projektion, Transformationen, &c. könnt ihr von von Nate Robins Website herunterladen.
Anderes
- SharpGL House 3D-Aufgabe "Haus" (Visual Studio 2008; SharpGL) – (contributed by MovGP0)
- Help stamp out GL_PROJECTION abuse; mehr zum thema GL_PROJECTION / gluLookAt
Past
Erster Termin (Grundlagen)
Grundlegende Einführungsveranstaltung, Dauer ca. 2.5 - 3 Stunden. Der Workshop ist praktisch orientiert, C-Kenntnisse sind also sehr von Vorteil. Vorkenntnisse aus CG sind nicht nötig.
Ich kann auch gern im Anschluss individuelle Workshops in Kleingruppen anbieten, Interessenten sollten aber bitte unbedingt die Einführung besuchen! Auch ein 2. Teil über High-Level 3D-Graphik mit Coin3D ist geplant.
Wer das ganze gleich auf dem eigenen Laptop ausprobieren möchte, bitte zusätzlich zu OpenGL folgendes installieren:
Termin
- Wann: Samstag, September 15 2007, 15:00
- Wo: Metalab, Rathausstrasse 6, 1010 Vienna