Grafikprogramming mit OpenGL und C++ (Wintersemester 2017/2018)
Dozent:
Prof. Dr. Jürgen Döllner
(Computergrafische Systeme)
,
Daniel Limberger
(Computergrafische Systeme)
Allgemeine Information
- Semesterwochenstunden: 4
- ECTS: 6
- Benotet:
Ja
- Einschreibefrist: 27.10.2017
- Lehrform: Seminar / Projekt
- Belegungsart: Wahlpflichtmodul
- Maximale Teilnehmerzahl: 15
Studiengänge, Modulgruppen & Module
- Human Computer Interaction & Computer Graphics Technology
- HCGT: Human Computer Interaction & Computer Graphics Technology
- HCGT: Human Computer Interaction & Computer Graphics Technology
- Internet & Security Technology
- ISAE: Internet, Security & Algorithm Engineering
- ISAE: Internet, Security & Algorithm Engineering
Beschreibung
In diesem Seminar werden praktische Kenntnisse der Grafikprogrammierung auf Basis von OpenGL und C++ vermittelt. Im Mittelpunkt steht dabei die Geschichte des Terrainrendering. Es sollen ausschnittartig Meilensteine im Terrainrendering---der computegrafischen Synthese von Landschaften---nachimplementiert und aufgewertet werden: z. B. Paralax Scrolling, Voxel Space Raycasting, Restricted Quadtree Triangulation, Diamond Terrain, Terrain Raymarching, Voxel Terrain, 'Unlimited Detail Terrain', Real-time Tesselation, Marching Cubes, Multi-resolution Terrain Rendering, uvm.
Im Ergebnis soll eine freie, interaktive Anwendung entsehen, in der der Nutzer für eine Terraineingabe zwischen verschiedenen Renderingansätze wechseln und sich frei in der jeweiligen Darstellung bewegen kann. Zu jedem Ansatz soll neben der authentischen Variante (Berücksichtigung früherer Restriktionen wie Speicher, Anzahl Farben, etc.) eine modernisierte Variante (z. B. GPU statt CPU, höhere Auflösung) sowie eine Debug Variante (erklärende Darstellung des Verfahrens sowie z. B. schrittweise Ausführung mit Annotation) bereitstehen.
Voraussetzungen
Kenntnisse in der Programmierung mit C++ und der Nutzung einer Grafik API (z. B. OpenGL oder DirectX) sowie Erfahrungen im Umgang mit Versionierungssystemen (z. B. svn, git) werden vorausgesetzt. Die Inhalte der Vorlesungen 'Einführung in die Programmiertechnik I' und II sowie '3D-Computergrafik I' und II werden vorausgesetzt. Eine vorangegangene, erfolgreiche Teilnahme an diesen Vorlesungen wird empfohlen.
Lern- und Lehrformen
Im Rahmen des Seminars erstellen die Teilnehmer jeweils eine abgeschlossene Softwarekomponente, welche ein computergrafisches Verfahren umfasst und in die gemeinsame Anfwendung integriert wird. Die Bearbeitung erfolgt entweder in Einzelarbeit oder in kleinen Teams (max. zwei Personen). In wöchentlichen Terminen werden zunächst die verwendeten Softwarekomponenten vorgestellt, und praktische, computergrafische Anwendungen (ergänzend zu den Inhalten der Vorlesungen Computer Grafik I und II) vermittelt. Spätere Termine werden zur Klärung von Fragen sowie der Koordination der Teams untereinander genutzt werden.
Leistungserfassung
Die Leistung wird durch die Erstellung und Präsentation einer Softwarekomponente erbracht. Die Leistung setzt sich dabei aus einem Einführungs- und Konzeptvortrag (10%), der Implementation (30% + 30% + 20%), sowie einem Endvortrag (10%) zusammen. Die Implementation setzt sich dabei aus den drei Varianten des gewählten Ansatzes zusammen (authentisch, modern, didaktisch).
Termine
Termine folgen.
Zurück