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: Mondays, 14:00, S9 (we start 17.2.2020)
Labs: Tuesdays, 12:20, SW1 (we start 17.2.2019)
Course Exam
There will be an oral examination done during the examination period. We have compiled a list of exam topics (COVID19 update!) for you. Read them to find out what we are going to be asking during the exam.
Exam dates:
Friday, 19.6.2020, 9:00, online only.
Friday, 26.6.2020, 9:00, at MS (room S9) + online as well.
Lectures
Lectures Schedule
No. | Date | Topic | Lecturer | Content | Slides |
1. | 17.2.2020 | Introduction | Martin Kahoun | Course overview | |
2. | 24.2.2020 | 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 |
|
3. | 2.3.2020 | Game Engine Architecture: Overview | Jakub Gemrot | Game engine components / layers Game loops (single/multi processor) Gameplay system Development and debugging |
|
4. | 9.3.2020 | Content Creation I – Manual | Martin Kahoun | Content creation for games in general The importance of texture calibration Level of detail Photogrammetry Creating large landscapes |
|
5. | 16.3.2020 | Content Creation II – Procedural | Martin Kahoun | Gentle introduction to procedural modelling Procedural shading basics Examples of use in gaming engines |
PDF, YT |
6. | 23.3.2020 | GTA V + DOOM 4 renderer dissection | Martin Kahoun | Techniques used in GTA V and DOOM 4 renderers | PDF, YT |
7. | 30.3.2020 | Real-time shadows | Martin Kahoun | Shadow calculation (shadow mapping, shadow volume) Advanced shadow mapping techniques Soft shadows Anti-aliasing (if time permits) |
PDF, YT |
8. | 6.4.2020 | Physically-based Rendering – Part I Preliminaries |
Jakub Gemrot | Intro to radiometry, photometry, colorimetry Radiance, luminance, color spaces, chromacity diagram sRGB, brightness and gamma correction Light-matter interactions, BRDF, the reflection equation |
PDF, YT |
13.4.2020 | Easter Holidays | ||||
9. | 20.4.2020 | Rendering II Real-time image-based lighting |
Jaroslav Křivánek (in memoriam) |
Brief overview of Monte Carlo integration Image-based lighting Prefiltered environment maps Filtered importance sampling Basic global illumination & path-tracing Photon mapping |
PDF (2019) |
10. | 27.4.2020 | Rendering III Advanced real-time shading techniques |
Jaroslav Křivánek (in memoriam) |
Function approximation Spherical harmonics SH irradiance environment maps Precomputed GI, lightmaps Radiosity normal mapping |
PDF1 PDF2 (2019) |
11. | 4.5.2020 | Invited Talk | Cancelled | ||
12. | 11.5.2020 | 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, YT |
13. | 18.5.2020 | Physically-based Rendering | Cancelled |
Labs
The labs have three parts:
- there are going to be 5 labs oriented on Direct X 11 and the low-level programming for GPUs,
- you will be required to choose a semester project (you can work in pairs) and deliver it (list of example topics available here),
- you will be required to select a paper, investigate a technique described in there, compile a presentation explaining the technique and present it.
You will receive credits for labs if you:
- are sending us regular semester project reports,
- deliver a milestone presentation,
- successfully deliver and defend a semester project.
COVID-19 UPDATE: Dates have changed (in bold)! Semester Project Milestone Presentations will happen through zoom.us, I will send you the link a week before presentations.
Labs Schedule
No. | Date | Topic | Lecturer | Content | Slides | Project | Project points |
1. | 17.2.2020 | Semester Project Topics Overview | Jakub Gemrot | Overview of topics you can choose for your semester project; the list of examples available here. |
|||
DirectX 11 – Part I | Jakub Gemrot | DirectX Pipeline Overview Opening DirectX Window |
GDrive | ||||
2. | 24.2.2020 | Semester Project Topics Consultations (!) | Jakub Gemrot | BE SURE TO COME WITH A TOPIC IN MIND! Q&A about topics you find interesting |
|||
DirectX 11 – Part II | Jakub Gemrot | Rendering a triangle Custom DX11 Rendering Framework Phong Shading |
PDF 1 PDF 2 |
GitHub | |||
3. | 2.3.2020 | Signing up for a Semester Project Topic (!) | Jakub Gemrot | This is your last chance to pick/change the topic.
Prepare an online document that will be summarizing Be sure to link your online document with Scoring sheet |
|||
DirectX 11 – Part III | Jakub Gemrot | Texturing | GitHub | ||||
4. | 9.3.2020 | Semester project topic presentations (!) | Jakub Gemrot | You are supposed to prepare 5 minutes talk about the topic you have chosen: – describe current state of the art – describe resources you want to base your wok on (or to start with) – describe of features you aim to implement in the context of this projectDo not forget to link your slides into the Scoring sheet (via commenting on an appropriate cell). |
5 | ||
5. | 16.3.2020 | DirectX 11 – Part IV | Jakub Gemrot | Geometry shader, Grass through Billboarding, SSAO | PDF, YT | ||
23.3.2020 | Semester Project Report 1 (!) | Jakub Gemrot | Send us a report on the progress you have done on your semestral projects. 1-2 A4 reporting on: what you have done so far, what challenges you have faced, what sources have you utilized/read, the best screenshot(s) exemplifying your work so far.You submit your report by providing the link within the Scoring sheet (via commenting on an appropriate cell). |
10 | |||
30.3.2020 | Labs cancelled, home office | ||||||
6.4.2020 | Labs cancelled, home office | ||||||
13.4.2020 | Easter Holiday | ||||||
20.4.2020 | Labs cancelled, home office | ||||||
6. | 27.4.2020 | Semester Project Milestone Presentations (!) | Jakub Gemrot | Presentations; prepare 12 minutes talk about the state of your semester projects. Summarize your work so far and include screenshots/videos exemplifying the current state of your work. |
15 | ||
4.5.2020 | Labs cancelled, home office | ||||||
11.5.2020 | Semester Project Report 2 (!) | Jakub Gemrot | Send us a report on the progress you have done on your semestral projects. 1-2 A4 reporting on: what you have done so far, what challenges you have faced, what sources have you utilized/read, the best screenshot(s) exemplifying your work so far.You submit your report by providing the link within the Scoring sheet (via commenting on an appropriate cell). |
10 | |||
7. | 25.5.2020 | Semester Project Defense – Early birds (!) | Jakub Gemrot | Prepare 15 minutes talk about your semester project including its show case. Read about details in the semester project defense guide. |
40 | ||
8. | ?.6.2020 | Semester Project Defense – Final birds (!) | Jakub Gemrot | Prepare 15 minutes talk about your semester project including its show case. Read about details in the semester project defense guide. |
40 |
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, see the column ‘Project points’ above).
You receive points for:
- Choosing a semester project topic on time – 5 points
- Sending report 1 – 10 points
- Milestone presentations – 15 points
- Sending us report 2 – 10 points
- Defending your project – up-to 40 points
Semester projects are judged both by teachers and you (students), resulting score from the defense is an average of scores you receive from your audience. Read about the details in the semester project defense guide.