Einführung in die Computergraphik
Diese Vorlesung soll eine erste Einführung in die Themen der Computergraphik geben.
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.
Aus dem Inhalt:
- Mathematische Grundlagen, Farben, Abtastung
- 2D Computergraphik (scan conversion, etc.)
- 3D Computergraphik (rendering pipeline, Transformationen, Beleuchtung, etc.)
- OpenGL
- Echtzeit-Rendering
Aktuelles
Die Tabelle, wer einen Schein bekommen hat.
Literatur zur Visibility.
Folien
Die folgende Tabelle enthält die behandelten Themen und die dazugehörigen Folien.
Je nach Bedarf können sich Verschiebungen ergeben.
Woche |
Thema |
Folien, 4up |
Folien, 2up |
Übungs- aufgaben |
Literatur |
1. |
Orga, Intro, Geschichte, Displays, C++ |
PDF1 PDF2
PDF3 |
PDF1 PDF2
PDF3 |
Blatt 1 |
|
2. |
Farben |
PDF |
PDF |
Blatt 2 |
PS, DR, FvD
|
3. |
Farben, Intro to OpenGl |
PDF1 PDF2 |
PDF1 PDF2 |
Blatt 3 |
HB
|
4. |
Farben (Rest), Mathe Wdhg., Scan Conversion Lines |
PDF1
PDF2
PDF3 |
PDF1
PDF2
PDF3 |
Blatt 4 |
FvD, DR, PS
|
5. |
Baryzentrische Koordinaten 1 |
PDF |
PDF |
Blatt 5 |
|
6. |
Baryzentrische Koordinaten 2, Image Warping, Polygon Scan Conversion
(Pineda, AET, non-convex) |
PDF1
PDF1 |
PDF1
PDF1 |
Blatt 6 |
PS, FvD
|
7. |
Sampling und Filterung |
PDF |
PDF |
Blatt 7 |
PS, FvD
|
8. |
Fourier-Transf. und Aliasing, Anti-Aliasing Lines & Polygons |
PDF1
PDF2 |
PDF1
PDF2 |
Blatt 8 |
PS, FvD
|
9. |
Homogene Koordinaten, Transformationen |
PDF |
PDF |
Blatt 9 |
PS, FvD, HB
|
10. |
Komplexere Transformationen, relative Transformationen, Scenegraph,
Projektionen, Stereoskopische Projektion |
PDF |
PDF |
Blatt 10 |
FvD, PS, HB
|
11. |
Visibile Surface Determination, Z-Buffer, Hierarchical Z-Buffer, BSP, Warnock |
PDF |
PDF |
Blatt 11 |
DR, FvD
|
12. |
Culling (Backface Culling, View-Frustum Culling) |
PDF |
PDF |
Blatt 12 |
MH
|
13. |
Culling Rest (Box-Frustum, Portal-C., Occlusion-C.), Lighting & Shading |
PDF1
PDF2 |
PDF1
PDF2 |
Blatt 13 |
HB, DR, FvD
|
14. |
Ray-Tracing (rekursives RT, Schnittberechnungen) |
PDF |
PDF |
- |
PS, FvD, MH
|
Unter Linux können Sie die PDF-Files mit acroread,
xpdf oder gv lesen.
Literatur
Folgende Literatur eignet sich als begleitende Lehrbücher
(in Klammern die oben verwendeten Kürzel):
- Peter Shirley: Fundamentals of Computer Graphics; 2nd Edition, AK Peters. (PS)
- Donald Hearn, M. Pauline Baker: Computer Graphics with OpenGL; 3rd edition,
Pearson / Prentice Hall (HB)
- Foley, van Dam, Feiner, Hughes: Computer Graphics -- Principles and Practice;
Addison Wesley. (FvD)
- David F. Rogers: Procedural Elements for Computer Graphics; 2nd Edition, McGraw-Hill. (DR)
- Tomas Akenine-Möller, Eric Haines: Real-Time Rendering; AK Peters. (MH)
Falls Sie sich diese Bücher anschaffen möchten, sollten Sie vielleicht überlegen, gebrauchte Exemplare
zu erwerben -- oft gibt es diese zu einem Bruchteil des Neupreises. Zwei gute Internetadressen sind
Abebooks und BookButler.
Scheinerwerb
Einen Schein erwirbt man durch erfolgreiche Teilnahme an den Übungen. Das
heißt, Sie müssen insgesamt mindestens 60% der maximal erhältlichen Punkte
erreichen.
(Eine "Schein"-Klausur findet nicht statt.)
Folgende Studenten haben einen Schein erworben (die Note hat keine weitere Auswirkung -- das wäre die Note
gewesen, wären die Scheine benotet):
Matr.Nr. | Punkte | Note |
318602 | 175 | 3.7 |
309709 | 190 | 3.0 |
342195 | 222 | 2.0 |
341572 | 185 | 3.3 |
340832 | 184 | 3.3 |
316583 | 191 | 3.0 |
333681 | 156 | 4.0 |
Übungsbetrieb
Übungsblätter
Die Übungsblätter werden jeweils am Donnerstag im Lauf des Tages auf der
Homepage der VL (also hier) ins Netz gestellt.
Die Abgabe der Lösungen ist jeweils am Donnerstag in der folgenden Woche direkt in der
Vorlesung bzw. der Übung.
Theoretische Aufgaben werden schriftlich abgeliefert, praktische
Aufgaben werden in der Übung am Rechner vorgeführt.
Hinweise und Downloads zur Bearbeitung der Übungsblätter
- Die Installation der OpenSource-Version von Qt ist unter Windows etwas komplizierter als unter Linux. Eine
ausführliche Installationsanweisung und einige Tipps für die ersten Schritte mit Qt bietet
dieses Dokument.
- Hier können Sie das kleine
OpenGL/Qt-Programmbeispiel
aus den Übungen herunterladen.
Übungsblatt Nr. 4:
Hier finden Sie das Rahmenprogramm für Aufgabe 1: StereoCube.zip
Und hier das Rahmenprogramm für Aufgabe 2: ColorTransfer.zip
Übungsblatt Nr. 6:
Das Qt-Framework für Aufgabe 1: PolygonRasterization.zip
Und das Rahmenprogramm für Aufgabe 2: ImageWarping.zip
Übungsblatt Nr. 10:
Das Qt-Framework für die praktische Aufgabe: Billard.zip
Übungsblatt Nr. 12:
Eine aktualisierte Version der Ball.cpp und Ball.h: Ball.zip.
Source-Code zur Implementierung von Backface-Culling mit Normalenmasken:
culling_using_normal_masks.tar.gz.
Achtung: dieser Code dient nur als Beispiel; er compiliert nicht.
(Quelle: Hansong Zhang's Homepage.)
Eine schöne Lösung der Billardaufgabe aus Übungsblatt 10 von Michael Steinberg gibt es hier: BillardSol.zip.
Online Literatur und Resources im Internet
- Ein sehr ausführliches Skript von Prof. Straßer.
- Zu Visibility Computations:
- OpenGL:
- Qt
(ein Cross-Plattform-GUI Toolkit, als "Wrapper" für OpenGL-Fenster)
(für open-source Anwendungen ist die Library
kostenlos)
- Gary W. Meyer:
Tutorial on color science;
The Visual Computer, Volume 2, Number 5 / September, 1986.
Von einem Rechner innerhalb des LANs der TUC kann man sich
hier das Paper herunterladen.
- C++ :
Change Monitoring:
If you enter your email adress in one of the boxes above and then press one of the "Monitor" buttons,
then either
ChangeDetection
or ChangeDetect
will send you an email whenever I make changes to this page.
Gabriel Zachmann
Last modified:
Wed Oct 03 14:13:51 MDT 2007