Content
The course focuses on core graphics algorithms, like ray-tracing and rasterization. The students learn how the hardware and APIs are working "behind the scenes" by implementing various low-level algorithms in C++. Some of the algorithms will be implemented using compute APIs to run on the GPU. Final results will be presented to the group at the end.
A core topic of this course is to develop understanding for what is necessary to make an algorithm useful instead of only understanding how it works. For instance, the students will have to implement an acceleration structure for ray-tracing -- a prime example of how to get from a good idea to an useful solution for global illumination. As the implementation won't use a graphics API, the students can focus on the problem domain.
Planned topics
- Raytracing: Path-tracing, acceleration structures
- Rasterization: Scanline and block-based rasterization, texture mapping
- Introduction to vector optimization for CPUs with SSE
- Hybrid rendering
- Final "free-style" project
Contact
If you have questions, feel free to contact chajdas@tum.de any time.
Copyright
- The dragon mesh (left image) is provided by B. Erdt (ben-erdt.de), used with permission.
- The soldier mesh (center image) is provided by Adrian Radoiu (adions.de), used with permission.
- The right image shows a scene from Doom³ by id software.
