Computer Games Laboratory (IN7106, IN710615)
Time, Place | Mo. 14:15 - ca. 15:45, held online due to Corona (Only on days with milestone submissions, see detailed schedule below) |
Supervision | (N. Thuerey), P. Holl, G. Kohl |
Begin | Registration via TUMonline and mandatory project kick-off via Moodle Course until Thursday, April 16. For further details, please carefully read the registration section below! Begin Laboratory: Monday, April 20. First online milestone meeting: Monday, April 27. |
Details | Main wiki: https://wiki.tum.de/display/gameslab2020/Home 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 presentations of the games to the public will take place during the demo day (exact day tba). |
Prerequisites | Bachelor 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
Description
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.
Prerequisites
- 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.
Organization
Regardless the content of the game, the development process must adhere to the guidelines proposed below. Students are encouraged to design a game that has strong links to one of the areas of specialization in the curriculum of the Master program Informatik: Games Engineering.
After choosing their favorite area of specialization, the students plan the project and prototype the intended game. Then, the game is implemented and iteratively improved via playtesting until it is ready to be presented at the end of the semester. Teams from different areas can also join to create an even more complex game.
Registration
All students have to sign up for the Computer Games Laboratory via TUMonline and attend the mandatory online lectures and milestone meetings. It is not possible to join later on during the semester. Note - this practical course does not use the regular TUM informatics matching system you might know from other seminars and practicals.
In order to attend this practical, make sure to participate in the mandatory project kick-off via Moodle to form groups until April 16. It takes place before the semester starts because of the tight milestone schedule for this course. Note that you should not sign up for this course until you're sure you will participate. If you drop out, this can cause significant problems for your other team members.
Timeline
The following table gives an overview of all online meetings during the semester. On all none mentioned weeks there is no class.
lecture / milestone | date | team presentation in class | to publish on the wiki (due sunday before presentation) |
---|---|---|---|
Online project kick-off | until 16.04. | Register in TUMonline and form groups via Moodle | |
Lecture: Softskills Lecture: Prototyping 1. Milestone: Game idea pitch | 27.04. | Presentations: Game idea | Report: Game idea proposal Slides: Game idea |
04.05. | (no meeting) | Wiki: Mutual critiques | |
2. Milestone: Prototype | 11.05. | Presentations: Prototype | Report: Prototype Slides: Prototype |
3. Milestone: Interim demo | 08.06. | Presentations: Interim demo | Report: Interim results Slides: Interim results |
Lecture: Playtesting 4. Milestone: Alpha release | 22.06. | Presentations: Alpha release | Report: Alpha documentation Slides: Alpha release |
5. Milestone: Playtesting | 06.07. | Presentations: Playtesting results | Report: Playtesting results Slides: Playtesting results |
6. Milestone: Final release | 20.07. | Presentations: Final release | Report: Final documentation Slides: Final release Video Compiled final game version |
Demo Day: live presentation | 09.03.21 | Delayed online demo day | Demo Day |
Course materials
Previous instances of this course
Winterterm 2019/2020
Summerterm 2019
Winterterm 2018/2019
Summerterm 2018
Winterterm 2017/2018
Summerterm 2017
Winterterm 2016/2017
Summerterm 2016
Winterterm 2015/2016
Summerterm 2015