What this is not: The C++ MiniLab is not part of any course, and is not related to the exam of any course.
It is not, by any means, mandatory.
What this is: The C++ MiniLab is an occasion given to the students to learn C++, by coding, as an example, the 3D math concepts that are used in courses such as 3DVG, Computer Graphics, and others. The C++ language is not a subject of any of these courses, or of their exams, but it's one of the de-facto standard languages of 3D graphics and videoGames.
When: At the end of every other lecture of 3DVG, 18:30.
Where: Sigma room
How long: Approx 1h per meeting.
Language: English
How to partecipate: Just bring a laptop, with some IDE installed (e.g. Visual Studio) and a C++ compliler; make sure that you can already compile and exectue a "hello world" program.
Sessions:
| 01 | 2026-04-15 (Wednesday) 18:30..19:30 Sigma Room |
Kick-off: a class for 3D vectors. |
main.cpp |
| 02 | 2026-04-20 (Monday) 18:30..19:30 Sigma Room |
3D vector operations. |
main.cpp |
| 03 | 2026-04-27 (Monday) 18:30..19:30 Sigma Room |
A multifile project. |
lab03.zip |
| 04 | 2026-05-06 (Wednesday) 18:30..19:30 Sigma Room |
A class for images. |
lab04.zip |
| 05 | 2026-05-15 (Friday) 18:30..19:30 Sigma Room |
A procedural checkerboard.
|
lab05.zip |
| 06 | 2026-05-20 (Wednesday) 18:30..19:30 Sigma Room |
Raytracing a sphere.
|
lab06.zip |
| 07 | 2026-05-25 (Monday) 18:30..20:00 Sigma Room |
Raytracing two spheres.
|
lab07.zip |
| 08 | 2026-05-29 (Friday) 18:30..20:00 Sigma Room |
A templated class for images. | lab08.zip |
| 09 | 2026-06-08 (Monday) 18:30..20:00 Sigma Room |
A class for graphs. Shortest path: setup.
|
lab09.zip |
| 10 | 2026-06-12 (Friday) 18:30..20:00 Sigma Room |
Shortest path (Dijkstra).
|
lab10.zip |
| 11 | 2026-06-15 (Monday) 18:30..20:00 Sigma Room |
Optimizations: A*, priority queue.
|
lab11.zip |