academic year 2019/20 – 2nd block
The master course Advanced Graphics addresses
advanced topics in 3D computer graphics. The focus of
the course is Physically-based rendering of 3D
scenes. The course has two main focus areas: Rendering
Algorithms and Making Rendering More
Efficient. Efficiency will be sought through Acceleration Structure
Construction and Traversal
Reduction (rather than low level
The course starts with a recap of Whitted-style ray tracing. We then explore various acceleration structures that help to run the ray tracing algorithm in real-time on commodity hardware. We will see that a well-built Bounding Volume Hierarchy provides both flexibility and speed, for static and dynamic scenes.
The second part of the course introduces the path
tracing algorithm, and related light transport theory.
We investigate various methods to improve the efficiency
of the algorithm using probability theory. We will see
that efficient path tracing can yield interactive frame
In the third part of the course we use GPGPU to run ray tracing and path tracing on the GPU. We will explore recent research in high performance stochastic rendering.
This year we will also explore recent hardware
developments, and related to that, various ray tracing
APIs and state-of-the-art filtering technology aimed at
At the end of this course you will have detailed knowledge
about the following topics:
You will have practical experience in the following
You will have a reasonable grasp of several related
Lecturer: Jacco Bikker (firstname.lastname@example.org)
BLOCK 2 Schedule
SUPPLEMENTAL MATERIALThe Probability Theory document.
The 2018/2019 exam, with answers.
The 2017/2018 exam, with answers.
The 2016/2017 exam, with answers.
The 2015/2016 exam, with answers.
Generic C/C++ template: tmpl_2019_v2.zip
Generic C# template: template_csharp.zip
GPGPU / OpenCL / C++ template: tmpl_OCL_2019.zip
GPGPU / OpenCL / C# template: tmpl_OCL_Csharp_2018.zip
GPGPU / CUDA / C++ template: CUDAtemplate2019.zip
LH2 can be found on GitHub.
The course includes a software project that should be
worked on in pairs. It is allowed to work on this alone,
but be aware that the scope of the project is tuned for
There are three milestones for this project:
The final grade for the software project is calculated as
practical grade = (P1 + P2
+ 2 * P3) / 4
In order to pass the course, you must meet these
Practical grade P = (P1 + P2 + 2 * P3) / 4
P >= 4.5
RETAKES AND REQUIREMENTS
There will be an opportunity for a retake exam or a retake assignment. In order to qualify, a grade of at least 4.0 is required in both areas (final exam, practicals). The retake exam or assignment replaces the matching exam or assignment.
IMPORTANT: you can only take the retake exam if you have both a high-enough but non-passing grade (i.e., at least 4.0 and less than 5.5).
If you are retaking this course it may be possible to transfer partial grades to this academic year. This is only possible for practical assignment grades; if you are retaking Advanced Graphics, you must retake the exam. Contact me for details.
PAPERS & ONLINE MATERIALS