Computer Games Laboratory (IN7106, IN710615)

Prof. Dr. Westermann

Time, PlaceWednesday, 16:00-18.00, 02.13.10 
(only on days with milestone submissions, see detailed schedule below)

Oct. 16., 2019

Mandatory kick-off meeting: Oct. 9., 2019 from 16:00-18:00 in room: 02.13.010 . (No matching system needed. If you cannot make it to the kick off, contact us... it won't be possible to join later on!)


Main wiki: 

This course is open only to master students in Informatik: Games Engineering. The module comprises lectures, programming exercises, and student presentations

Final pres.:The final presentation of results will take place during the demo day (exact date tba), and there will be a prize for the best game!
PrerequisitesBachelor Informatik: Games Engineering

Short Summary

Nach der Teilnahme am Modul sind die Studenten in der Lage gezielt visuelle Effekte zu analysieren und diese mithilfe von Shadern für Spiele und andere Applikationen zu erstellen. Die erlernten Technologien umfassen Beleuchtung, Bildeffekte, Compute und fortgeschrittene Technologien wie Tessellation. Die Studenten können Shader optimieren und Gelerntes auch auf Bereiche außerhalb des Games Engineering anwenden. Sie erhalten einen tiefen Einblick in die Funktionsweisen und den Aufbau moderner Renderer und verstehen die Einordnung verschiedener Shader in die Graphics Pipeline.

Inhalt anhand von aktuellen Beispielen wird den Studenten die plattformübergreifende Entwicklung von Shadern für Games und andere, Computergrafik fokussierte, Anwendungen erläutert. Als Entwicklungsumgebung kommen Unity3D, Unreal Engine oder Visual Studio zum Einsatz. Spezieller Fokus liegt hier auf:

  • Aufbau von Shadern: Vertex, Fragment, Geometry und Surface Shader
  • Verschiedene Beleuchtungsmodelle
  • Physically Based Rendering, BRDFs
  • Optimierung, Performance Analyse, Tools
  • Rendering, Graphic APIs
  • Post-Processing, Image Effects
  • Compute Shader
  • Tessellation
  • Stylized Shading
  • Volume Rendering


This is a practical course which involves a hands-on approach with neither traditional lectures nor exercises. Instead, we will meet ca. once every two weeks to discuss technical issues and to track progress via milestones. Students can utilize available game engines, yet we will make sure that a considerable own programming effort will be invested. While development will take place on PCs, students are free to choose the target platform of their final game. 

At the end of the course, all results will be presented to the public. 


  • Good programming skills (course projects are written in C++ or C#).
  • Students should have passed successfully the Realtime CG lecture and practical.
  • This practical is open for students of Informatics: Games Engineering only.


All students have to sign up for the practical and attend the mandatory lectures. It is not possible to join later on during the semester.



The following table gives an overview of all in class meetings during the semester. On all none mentioned weeks there is no class.

lecture / milestonedateteam presentationto publish on the wiki
(due before presentation)
Kick-off Lecture: softskills and prototyping Oct. 16thForm groups, email to (also if you didn't find a group so far, but still want to participate!)
1. Milestone: Game idea pitchNov. 6thGame ideaReport: Game idea proposal
Slides: Game idea
2. Milestone: PrototypeNov. 20thPrototypeReport: Prototype
Slides: Prototype
3. Milestone: Interim DemoDec. 11thFirst programming resultsReport: Interim results
Slides: Interim results
Lecture: Playtesting
4. Milestone: Alpha release
Jan. 15thAlpha versionReport: Alpha release documentation
Slides: Alpha release
5. PlaytestingJan. 29thPlaytesting resultsReport: Playtesting results
Slides: Playtesting results
6. Final Release Feb. 12thno presentation

Report: Final documentation
Slides: Final
Compiled final game version
all submitted electronically

Demo Day live presentationFeb. NNthpre-final
Live Demo