Computergrafik 1

 

Prof. Dr. Stefan Müller

Inhalte - ZielgruppePrüfung - Themenübersicht - ProgrammierumgebungÜbungsgruppen - Literatur

Im Rahmen dieser Vorlesung werden die Grundlagen der Computergrafik vermittelt. Hierzu gehört vor allem die Bildgenerierung aus 2D- und 3D-Datensätzen mit den relevanten Datenstrukturen, Methoden und Algorithmen. Einen wichtigen Schwerpunkt bildet dabei das Programmieren von graphischen Systemen, wobei im Rahmen dieser Vorlesung auf praktische Beispiele mit OpenGL in C/C++ zurückgegriffen wird. 

Alle Studierende des Bachelor-Studiums Computervisualistik, die Mathematik A und B bestanden haben.

Im Rahmen der Veranstaltung werden zwei Prüfungen angeboten:

  1. Eine CG-Klausur, in der die Theoretischen Inhlte der Voerlesung Geprüft werden.
  2. Eine CV-Programmierklausur, in der praktische Kenntisse im Rahmen der Veranstaltungen Computergrafik 1 und Bildverrabeitung 1 gemeinsam an einem PC geprüft werden. Die Teilnahme an dieser Klausur ist nur für Studierende des Studienganges Computervisulistik verpflichtend.

Zeiten, Daten und Räume zu den Klausuren werden später bekannt gegeben.

  • Mathematische Grundlagen der Computergrafik

  • Grundlagen und Algorithmen der Rasterisierung

  • Antialiasing, Clipping und Scan-Konvertierung

  • 3D Transformationen

  • Kameratransformation und Kamerasteuerung

  • Orthographische und perspektivische Transformation

  • Grafik-Pipeline von OpenGL

  • Licht, Materialien und Beleuchtung

  • Texturen

  • Parametrische Kurven, Bézier-Kurven und Splines

  • Ray-Tracing

Die Folien zur Vorlesung finden sich hier.

Folgende Software wird zur Bearbeitung der Programmieraufgaben benötigt. Dabei wird hier exemplarisch davon ausgegangen, dass Eclipse auf einer Windows Umgebung installiert wird. Für andere Entwicklungsumgebungen oder andere Betriebsysteme müssen gegebenenfalls andere Schritte durchgeführt werden.

Unter dieser Adresse befindet sich eine Video Anleitung, in der Schritt für Schritt der Aufbau der Entwicklungsumgebung unter Windows dargestellt und beschrieben ist.

SoftwareBeschreibung
SVN

Zum Herunterladen des Frameworks der Veranstaltung folgende Schritte durchführen:

  1. SVN Client installieren
  2. Diesen Link mit SVN Update herunterladen
MinGW

Zum Kompilieren von C++ Programmen auf einer Windows Umgebung folgende Schritte durchführen:

  1. Installieren der Software in den Ordner "C:\MinGW\"
  2. Es muss der Ordner "C:\MinGW\bin\" in der Path Variable gesetzt werden, damit der Compiler gefunden wird. Die Path Variable findet man unter "Systemeinstellungen -> System -> erweiterte Systemeinstellungen -> Umgebungsvariablen". Nähere Informationen unter diesem Link.
  3. (Kopieren der Datei "glfw3.dll" dank statischer Verlinkung nicht länger notwendig.)
Eclipse CDT

Eclipse herunterladen und installieren. Zum Test ein neues C++ Projekt mit "Hello World" erzeugen (dabei unbedingt den MinGW Compiler auswählen). Wenn in der Kommandozeile "Hello World" zu sehen ist, dann funktioniert MinGW als Compiler mit Eclipse.

CMake

Zum Aufsetzen des Frameworks folgende Schritte durchführen:

  1. CMake installieren
  2. Die setup.bat Datei aus dem mit SVN heruntergeladenen Ordner des Frameworks ausführen und die gewünschte Umgebung auswählen (für Eclipse die Taste "4" drücken).
  3. Anschließend kann man in Eclipse den Projektordner (zum Beispiel: "\cvws1516\framework\CG_demos\BUILD_Eclipse\") importieren (über Import -> General -> Existing Projects...).
  4. In Eclipse unter "Make Targets" das Target "all" builden und zum Test die erste Demo ausführen. Erscheint ein rotes Dreieck, hat alles funktioniert und die Umgebung ist bereit.

Bitte bilden Sie Übungsgruppen von 2-3 Personen mit folgendem Tool:

https://ist.uni-koblenz.de/teams/de/user/courses

Die Teambildung wird am Fr. 07.11.14 mit Erscheinen des zweiten Arbeitsblattes abgeschlossen. Letzter Zeitpunkt zur Anmeldung zu einer Gruppe in Teams ist am Do. 06.11.14 um 12:00 Uhr.

Die Übungsblätter zur Vorlesung finden sich hier.
Die Folien zur Übung finden sich hier.
Die Abgabe der Übungsblätter erfolgt über SVN. Die Lösungen der Theorie sind als PDF in den Ordner solutions zu legen.

Weiterführende Literatur
  • Peter Shirley:
    Fundamentals of Computer Graphics
    AK Peters 2005, 2. Auflage

     

  • Mason Woo, Jackie Neider, Tom Davis, Dave Shreiner:
    OpenGL(R) Programming Guide: The Official Guide to Learning OpenGL
    Addisson-Wesley, 5. Auflage, 2005
    Online-Version einer älteren Ausgabe.
  • J. Foley, A. van Dam, S. Feiner, J. Hughes:
    Computer Graphics: Principles and Practice (2nd edition)

     

  • Alan Watt:
    3D Computer Graphics (3rd edition)

     

  • Michael Bender, Manfred Brill:
    Computergrafik
    Hanser Verlag, 2003

     

  • Klaus Zeppenfeld:
    Lehrbuch der Grafikprogrammierung
    Spektrum Akademischer Verlag, 2004