Contents
This is an intermediate course about real-time computer graphics focusing on techniques used in contemporary 3D games.
News
Follow the appropriate channel at Gamedev Discord!
https://discord.gg/c49DHBJ
Dates (SIS)
Lectures: Thursdays 12:20, some will be physical, some will be online, see the schedule; we start 17.2.2022
Labs: Mondays, 17:20, online, let’s meet on Discord > Lecture Hall > Auditorium; we start 21.2.2022
Course Exam
There will be an oral examination done during the examination period.
Here goes a list of topics (might be updated as the semester proceeds) including some details on the examination itself.
Exam dates:
TO-BE-DECIDED
Schedule
Type | No. | Date | Format | Topic | Lecturer | Content | Slides / Videos |
Lec | 1. | Thu 17.2.2022 | Physical | Introduction | Martin Kahoun | Course overview | |
Lab | 1. | Mon 21.2.2022 | Online | Introduction Semester project overview |
Jakub Gemrot | Rec. on OneDrive | |
Lec | 2. | Thu 24.2.2022 | Physical | Review of the GPU architecture and the OpenGL/DirectX pipeline Shaders & Shading Technology |
Martin Kahoun | GPU architecture Moving geometry primitives through the pipeline Shader stages one by one: vertex, pixel, geometry, tessellation, compute |
|
Lab | 2. | Mon 28.2.2022 | Online | DirectX 11 Part 1 Semester project topic consultations |
Jakub Gemrot | Creating DirectX application | PDF Rec. on OneDrive |
Lec | 3. | Thu 3.3.2022 | Online | Game Engine Architecture: Overview | Martin Pernica | Game engine components / layers Game loops (single/multi processor) Gameplay system Development, debugging, optimizations |
|
Lec | 4. | Thu 10.3.2022 | Physical | Content Creation I – Manual | Martin Kahoun | Content creation for games in general The importance of texture calibration Level of detail Photogrammetry Creating large landscapes |
|
Lab | 3. | Mon 14.3.2022 | Online | Semester project topic presentations DirectX 11 Part 1 continued |
Jakub Gemrot | Small DirectX rendering framework | Rec. on OneDrive |
Lec | 5. | Thu 17.3.2022 | Physical | Content Creation II – Procedural | Martin Kahoun | Gentle introduction to procedural modelling Procedural shading basics Examples of use in gaming engines |
|
Lab | 4. | Mon 21.3.2022 | Online | DirectX 11 Part 2 | Jakub Gemrot | Phong shading | PDF Rec. on OneDrive |
Lec | 6. | Thu 24.3.2022 | Physical | GTA V + DOOM 4 renderer dissection | Martin Kahoun | Techniques used in GTA V and DOOM 4 renderers | |
Lab | 5. | Mon 28.3.2022 | Online | DirectX 11 Part 3 Semester project report 1 |
Jakub Gemrot | Geometry shader and Billboarding | PDF1, PDF2 Rec. on OneDrive |
Lec | 7. | Thu 31.3.2022 | Physical | Real-time shadows | Martin Kahoun | Shadow calculation (shadow mapping, shadow volume) Advanced shadow mapping techniques Soft shadows Anti-aliasing (if time permits) |
|
Lab | 6. | Mon 4.4.2022 | Online | DirectX 11 Part 4 | Jakub Gemrot | Deferred rendering, SSAO | PDF Rec. on OneDrive |
Lec | 8. | Thu 7.4.2022 | Physical | Animation | Martin Kahoun | Animation – formats and compression Bone (or skeletal) animation; rigid bodies, joints Vertex blending and problems Forward and inverse kinematics, solvers Facial animations; blend shapes, morph targets Motion capture Physically based animations; hair animation, anatomical body models |
PDF (2021) |
Mon 11.4.2022 | Semester project report 2 | Jakub Gemrot | |||||
Lec | 9. | Thu 14.4.2022 | Online DISCORD 9:00 |
Physically-based Rendering – Part I Preliminaries |
Martin Pernica | Intro to radiometry, photometry, colorimetry Radiance, luminance, color spaces, chromacity diagram sRGB, brightness and gamma correction Light-matter interactions, BRDF, the reflection equation |
|
Lec | 10. | Thu 21.4.2022 | Online DISCORD 9:00 |
Physically-based Rendering – Part II | Martin Pernica | Reflection models introduction Lambertian diffuse, Fresnel reflection Environment maps |
|
Mon 25.4.2022 | Semester project report 3 | ||||||
Lec | 11. | Thu 28.4.2022 | Online DISCORD 9:00 |
Physically-based Rendering – Part III Advanced real-time shading techniques |
Martin Pernica | Function Approximation Spherical Harmonics Brief overview of Monte Carlo integration |
|
Lec | 12. | Thu ?.5.2022 | TBD | Invited lecture – TBD |
Labs details
The labs have two parts:
- there are going to be 4 labs oriented on Direct X 11 and the low-level programming for GPUs (no homeworks),
- you will be required to choose a semester project (you can work in pairs) and deliver it.
You will receive credits for labs if you:
- are sending us regular semester project reports,
- successfully deliver and defend a semester project.
Semester Project Topics
See this document with some suggestions.
Semester Project Grading
You need to gather at least 70 points for your semester project in order to pass.
You are gathering points by choosing a semester project topic, sending reports and defending your semester project (on time).
You receive points for:
- Choosing a semester project topic on time – 5 points
- Sending report 1 – 10 points
- Sending report 2 – 10 points
- Sending report 3 – 10 points
- Defending your project – up-to 40 points
Semester projects are judged by teachers.