Annotation
During the course, students will become familiar with the fundamental principles of 3D computer graphics using the C++ programming language and the OpenGL graphics API (optionally Vulkan), and will gain practical experience with shader programming in GLSL. They will progress through the steps from loading a 3D model to its visualization, including working with cameras, transforming objects and entire scenes, setting up lighting, working with textures, normal maps, shadows, skybox creation, and more.
Lesson plan
Dare | Time | Event |
16. 9. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 1 - Vectors, points, basic operations, vector spaces, coordinate systems, transformations, OpenGL template |
23. 9. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 2 - Modeling transformations, material management, scene movement |
30. 9. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 3 |
7. 10. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 4 |
14. 10. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 5 |
21. 10. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 6 |
28. 10. 2025 | Free day | |
4. 11. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 7 |
11. 11. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 8 |
18. 11. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 9 |
25. 11. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 10 |
2. 12. 2025 | 14:15 – 15:45, 16:00 - 17:30 | Lecture and exercise 11 |
9. 12. 2025 | 14:15 - 17:30 | presentation of solutions to tasks assigned during exercises |
Literature
In addition to the recommended literature listed in the introductory slides of the first lecture, the primary source of information are the lecture notes and accompanying source files.
Credit
The maximum number of points for completing (i.e., implementing and verifying the functionality of) individual tasks can be found here. All submitted assignments are expected to demonstrate perfect familiarity with the source code and understanding of the methods and procedures used. The deadline for obtaining credit is December 9, 2025.
Exam
The exam is oral with written preparation (max. 55 points). The exam questions correspond to the topics covered in the lectures. A list of exam question topics can be found here. The primary source of information for exam preparation are presentations and lecture notes. Additional recommended reading is listed on the slides from the first lecture. Exam dates will be posted during the exam period in Edison.
Lecture 1
Lecture 2
Modeling transformations, material management, scene movement
Excercise 1
The main goal of the first exercise is to familiarize yourself with the template (for VS2022), which can be used to facilitate the completion of tasks from individual exercises. During the exercise, we will discuss the following topics: representation of input geometry (OBJ format), vertices, normals, materials (MTL format), and textures. We will also describe the basic functionality of libraries to facilitate working with the OpenGL API.
Excercise 2
This exercise follows on from the previous introductory demonstration of the template by loading meshes and displaying them using a simple fragment shader.