Diese Vorlesung soll eine erste Einführung in die Themen der Computergraphik geben, und die Grundlagen sowohl für die praktische Implementierung von computergraphischen Systemen, als auch für weiterführende Vorlesungen in diesem Fachgebiet legen.
Der Schwerpunkt liegt auf Algorithmen und Konzepten zur Repräsentation und Visualisierung von einfachen, 3-dimensionalen graphischen Szenen. Die Übungsaufgaben werden teils theoretisch, teils praktisch sein, wobei die praktischen Aufgaben gewisse Programmierfähigkeiten in C++ verlangen. (Zu Beginn der Vorlesung wird deshalb nochmals ein kurzer "Refresh" Ihrer C/C++-Kenntnisse gemacht.)
Aus dem Inhalt:
Woche | Thema | Übungs- aufgaben |
Literatur | |
---|---|---|---|---|
1. | Orga, Intro, Geschichte, Displays, Gammakorrektur, Mathe Wdhg. 1 | PDF1 PDF2 | Blatt 1 | FvD |
2. | Mathe Wdhg. 2 (Flächeninhalte, Spatprodukt, Volumeninhalte, geometrische Prädikate, lineare
Interpolation); Übersicht über die Grafik-Pipeline; Scanline-Konvertierung von Linien mit Midpoint-Algorithmus |
PDF1 PDF2 PDF3 | Blatt 2 | PS, DR, FvD |
3. | Wiederholung C++, Ray-Tracing von Terrain, Baryzentrische Koordinaten 1 | PDF1 PDF2 PDF3 | Blatt 3 | FvD, DR, PS |
4. | Baryzentrische Koordinaten 2, Scan Conversion für Dreiecke, .. für allgemeine Polygone, Zerlegung in konvexe Polygone, Füllen nicht-einfacher Polygone und beliebiger Regionen (Odd-Even-Test, Winding-Number-Test) |
PDF1 PDF2 | Blatt 4 | FvD, DR, PS |
5. |
Visibility Computations 1 (Painter's Algo, Z-Buffer, Hierarchischer Z-Buffer,
BSP) Einführung in OpenGL |
PDF1 PDF2 | Blatt 5 | |
6. |
Visibility Computations 2 (Warnock Algo, Double & Quad Buffer,
Stencil Buffer, Spiegelungen, Schattenvolumen) Clipping 1 (Präliminarien) |
PDF1 PDF2 | Blatt 6 | PS, FvD, OL |
7. |
Clipping 2 (Einzelnes Liniensegment, Outcodes, Cyrus-Beck-Algo) Transformationen (Einordnung in die Pipeline, homogene Koordinaten, einfache Transformationen, Konkatenierung) |
PDF1 PDF2 | Blatt 7 | PS, FvD, MH |
8. |
Transformationen 2 (Rotationen, Euler-Winkel, Gimbal Lock, Rotation um beliebige Achse,
Zerlegung von Rotationsmatrizen, Anatomie einer Matrix, Transformationen in OpenGL,
relative Transformationen, Objekthierarchien, Matrix-Stack, Klassifikation) Projektionen und Perspektive (Einordnung in die Pipeline, orthographische und perspektivische Projektion, Eigenschaften, Viewing-Transformation, das Ganze in OpenGL) |
PDF1 PDF2 | Blatt 8 | |
9. |
Projizierte Schatten; Farben 1 (Einführung, Chromatizität, reflectance spectrum, spektrale Empfindlichkeit, Metamere) |
PDF1 PDF2 | Blatt 9 | FvD |
10. | Farben 2 (Grassmann'sche Experimente, CIE-XYZ, opponent color model, RGB, CMY, HSV, uniforme Farbräume, CIE-Lab) | Blatt 10 | DR, FvD | |
11. | Lighting 1 (Lambert'sches und Phong-Beleuchtungsmodell, Blinn-Phong, Gouraud-Shading, Phong-Shading, Mach-Bänder) | Blatt 11 | DR, FvD | |
12. | Lighting 2 (Gouraud- und Phong-Shading, Beleuchtung in OpenGL); Shader-Programmierung (GLSL, Gooch-Shader, Per-Pixel-Lighting) |
PDF1 PDF2 | Blatt 12 | PS, FvD, MH |
13. | Texturen 1 (Texturarten, Interpolation der Texturkoordinaten, perspektivisch korrekte Interpolation, Modulation der Beleuchtung, Bump-Mapping, Alpha-Blendung und Alpha-Texturen, Texturen in OpenGL) | |||
14. | Texturen 2 (Textur-Interpolation, MIP-Maps, Einfache Parametrisierung) |
Matr.Nr. | Punkte | Note |
---|---|---|
381185 | 84 | 3.7 |
383826 | 191 | 1.3 |
383871 | 151.5 | 2.3 |
371793 | 101 | 3.3 |
371810 | 111 | 3.0 |
340052 | 150 | 2.3 |
386094 | 110 | 3.0 |
374837 | 138 | 2.7 |
330990 | 137 | 2.7 |
Die Abgabe der Lösungen ist jeweils am Mittwoch zwei Wochen später direkt in der Vorlesung bzw. in der Übung. Theoretische Aufgaben werden schriftlich abgeliefert, praktische Aufgaben werden in der Übung am Rechner vorgeführt.