Modulbeschreibung
Dieses Modul vermittelt fortgeschrittene Techniken der modernen hardwaregestützten 3D Computergrafik unter Einsatz programmierbarer Grafikbeschleuniger.
Im seminaristischen Unterricht werden die theoretischen und technischen Grundlagen der programmierbaren GPU (Graphics Processing Unit) erläutert. An Hand von konkreten Beispielen werden darauf aufbauend ausgewählte Darstellungstechniken analysiert und demonstriert.
Mögliche Themenbereiche sind:
- Shader-Programmierung, Geometry, Vertex, und Fragment-Shader
- Multipass-Rendering, Postprocessing
- Global Illumination, Schatten, Spiegelungen
- Ray-Tracing, Radiosity
- Image-Based Rendering
- Non-Photorealistic Rendering
- Tesselation and Terrain-Generation
In den Übungen werden einige der Techniken unter Verwendung aktueller Programmierschnittstellen und –sprachen wie OpenGL und der OpenGL Shading Language (GLSL) implementiert.
Voraussetzungen
Dieser Kurs setzt Kenntnisse aus den Modulen Computergrafik 1 und Computergrafik 2 im Bachelorstudiengang Medieninformatik voraus. Erste Erfahrungen mit der Programmiersprache C++ und dem OpenGL API sind vorteilhaft.
Termine
Übung
Termin | Thema | Abgabe | Aufgaben |
---|---|---|---|
06.10.14 | Einführung und Organisation | - | |
13.10.14 | Simple Lighting | 03.11.14 | |
03.11.14 | Fly-Over | 24.11.14 | |
24.11.14 | Multi-pass Rendering | 12.01.15 | |
15.12.14 | Finale | 09.02.15 | |
Noten |
Accounts im CGM Labor
Für die Rechner im CGM Labor benötigen Sie einen persönlichen Account. Dieser wird zu Beginn des Semesters aus den Beleglisten erzeugt. Der Benutzername ist dabei Ihre Matrikelnummer. Das Passwort muss bei der ersten Anmeldung gesetzt werden.
Literatur
- Mike Bailey and Steve Cunningham. (2009). Graphics Shaders: Theory and Practice. A. K. Peters, Ltd. Website.
- AkenineMöller, T. and Haines, E. (2008). RealTime Rendering 3rd Edition. A. K. Peters, Ltd., Natick, MA, USA. Website.
- Nguyen, H., editor (2008). GPU Gems 3. Addison Wesley. Online.
- Randi Rost. (2009). OpenGL® Shading Language 3rd Edition. AddisonWesley Professional. Website.
Links
Computer Graphics
C++
- cppreference.com
- The Boost C++ Libraries BoostBook Documentation Subset
- C and C++ for Java Programmers
- C++ Tutorial
- Comparison of Java and C++
- High Integrity C++ Coding Standard Version 4.0
OpenGL
GLSL
- The OpenGL Shading Language, Version 1.50
- OpenGL Shading Language (GLSL) Reference Pages
- OpenGL 3.3 + GLSL 1.5 Sample