Details
Hot Links
Lecture Announcements
Registration and course data is available on the TISS site.
Communication with students, Q&A sessions, and some extra material is provided through our TUWEL site! It'll be updated throughout the semester.
During COVID, we have a weekly Zoom meeting that's available through TUWEL as well.
Properties
- Semester hours: 2.0
- Credits: 3.0
- Type: VU Lecture and Exercise
Aim of the Course
This course will teach you how to write a physically correct and unbiased renderer based on the path tracing algorithm.
In the beginning, you will learn about the physics and math of light transport. Closely connected is the rendering equation, a high-dimensional integral describing the equilibrium of photons in a scene. We will then show you how to compute such integrals using Monte Carlo methods and to apply this new knowledge to implement the recursive path-tracing algorithm. At this point, you will have an understanding of how rendering works, but a lot remains to be learned: The asymptotic complexity of ray-tracing can be reduced by using acceleration data structures, enabling the program to deal with scenes that consist of more than just a dozen triangles. Materials like plastic, glass, metal, paint, and skin have properties that need special considerations during implementation. And finally, we will teach a bit about HDR, tone mapping, measuring error, and other rendering pipeline details.
The exercises will give you an understanding of the principles of Monte Carlo Integration, the rendering equation, optimization techniques, and material modelling. There will be many bonus tasks for interested students. We will also have a performance and a scene/bonus-task competition.
Schedule, Contents and Lecture Slides
The course will be purely virtual, with slides published here and lecture videos on YouTube. We will have regular Zoom meetings where you can ask questions. All this will be announced through TUWEL in time.
- Introduction (Bernhard)
Organization and how to take this course - Light (Adam)
Radiance, irradiance, solid angle, white furnace test - Monte Carlo Integration (Adam)
How to estimate the solution of highly dimensional integrals - Rendering Equation (Adam)
Recursive formulation of the rendering equation - Path Tracing Basics (Bernhard)
The basic algorithm using Russian Roulette - Spatial Acceleration Structures (Bernhard)
BVH, K-d tree, surface area heuristic (SAH) - History of Monte Carlo (Hamed)
Bonus historical background for Monte Carlo methods - Importance Sampling (Bernhard)
Hemisphere sampling, Importance sampling, transform sampling distributions - Multiple Importance Sampling (Adam)
How to reduce Variance of the estimator - Next Event Estimation (NEE) (Bernhard)
Revisiting the light source sampling approach - Materials 1 (Bernhard)
B*DFs, Fresnel, Snell's law, Dielectrics - Accessories (Adam)
Sampling theorem and filtering, parallelisation, HDR, tone-mapping, measuring error and sampling patterns
The schedule changed from the 2020S iteration (virtual as well), and therefore we will redo the slides and lectures. You can take a look at the old slides and videos.
Assignments and Grading
We use our own internal Gitlab submission system. Our philosophy in this course will be to make it possible to pass with a good grade within the workload of 3 ECTS (75 hours), while also allowing for very in-depth exploration of the topic (that is, you could probably spend months of full-time work if you are very motivated ;).
We plan 4 assignments throughout the semester. Each of them will be graded in a submission talk. We will also have an oral exam, which will be optional in case you have enough bonus points.
- Framework Download and Setup: Get to Know Nori
Due: 31 March - Monte Carlo Integration: Ambient Occlusion, Direct Light, Simple Path Tracing
Due: 18 April - Ray Tracing Acceleration Data Structures and Performance Competition
Due: 14 May - Sampling: Sample Warping, Importance Sampling, Multiple Importance Sampling
Preliminary due: 2 June - Materials and Scene/Bonus-Task Competition
Preliminary due: 2 July
Further Reading
- Previous rendering course from this university,
by Károly Zsolnai-Fehér. - Robust Monte Carlo Methods for Light Transport Simulation,
PhD thesis by Eric Veach,
one of the most influential works in this domain. - Physically Based Rendering, Third Edition: From Theory To Implementation,
Matt Pharr, Wenzel Jakob, and Greg Humphreys,
The bible of physically based rendering (referred to as PBRT). - Course on Monte-Carlo Methods in Global Illumination, by L. Szirmay-Kalos
A free course script that gives a detailed explanation of the mathematical foundations of Global Illumination.