Due to technical reasons, the exam of this Thurday Friday is postponed to 17:30 16:30, and will be held in Gamma Room (via celoria 18).
Time and place:
Monday 15:30..17:30 - Room 400
(Settore Didattico - via Celoria 20)
Thursday 16:30..18:30 - Room 202
(Settore Didattico - via Celoria 20)
Lecturer:
Marco Tarini (me!)
Language:
English
Modality:
Lectures are held in-person.
Classroom will be accessible only to students holding a Covid-19 certificate (green pass).
According to the regulations of the University, Students who are unable to attend due to (a) travel restriction (from abroad), (b) quarantine, or (c) health concerns can follow the lectures in live streaming. Follow the link below.
If possible, let the lecturer know in advance if you plan to follow a lecture in live-streaming.
Live-Streaming: Microsoft Teams meeting link.
Lectures & slides:
Slides will be available shortly after each lecture. They are intended only as a visual support for the presentation of the covered topics, and are not meant to be self-sufficient.
00 | 2022-02-28 (Monday) 15:30..17:30 Room 400 |
Course presentation & introduction | Game of the Week: EvoLand by Shiro Games |
01 | 2022-03-07 (Monday) 15:30..17:30 Room 400 |
Math for 3D Games: points, vectors, versors 1/2 | MiniLab: minilab00.zip |
02 | 2022-03-10 (Thursday) 16:30..18:30 Room 202 |
Math for 3D Games: problem examples | Games of the Week: 4D Toys (and Miegakure) by Marc ten Bosch |
03 | 2022-03-14 (Monday) 15:30..17:30 Room 400 |
Math for 3D Games: points, vectors, versors 2/2 Math for 3D Games: transforms 1/2 |
MiniLab: minilab01.zip |
04 | 2022-03-17 (Thursday) 16:30..18:30 Room 202 |
Math for 3D Games: transforms 2/2 Math for 3D Games: rotations 1/3 |
Game of the Week: Baba is You by Arvi Teikari |
05 | 2022-03-21 (Monday) 15:30..17:30 Room 400 |
Math for 3D Games: rotations 2/3 | MiniLab: minilab02.zip |
06 | 2022-03-28 (Monday) 15:30..17:30 Live streaming |
Math for 3D Games: rotations - problem examples Math for 3D Games: rotations 3/3 The scene graph 1/2 |
MiniLab: minilab03.zip |
07 | 2022-03-31 (Thursday) 16:30..18:30 Live streaming |
The scene graph 2/2 | Game of the Week: BirdSong by Daniel Linssen |
08 | 2022-04-04 (Monday) 15:30..17:30 Live streaming |
Physics for 3D Games: dynamics 1/3 | MiniLab: minilab04.zip |
09 | 2022-04-07 (Thursday) 16:30..18:30 Room 202 |
Physics for 3D Games: dynamics 2/3 | Game of the Week: Braid by Jonathan Blow |
10 | 2022-04-11 (Monday) 15:30..17:30 Room 400 |
Physics for 3D Games: dynamics 3/3
Physics for 3D Games: sandbox Unity project |
MiniLab: minilab05.zip |
11 | 2022-04-21 (Thursday) 16:30..18:30 Room 202 |
Physics for 3D Games: collisions 1/2
Physics for 3D Games: sandbox Unity project |
Game of the Week: BeamNG.drive by Thomas Fischer |
12 | 2022-04-28 (Thursday) 16:30..18:30 Room 202 |
Physics for 3D Games: collisions 2/2 | |
13 | 2022-05-02 (Monday) 15:30..17:30 Room 400 |
Physics for 3D Games: Particle Systems 3D Models 1/2 |
MiniLab: minilab06.zip |
14 | 2022-05-05 (Thursday) 16:30..18:30 Room 202 |
3D Models 2/2 | Games of the Week: Townscaper by Oskar Stålberg Tandis by Mahdi Bahrami |
15 | 2022-05-09 (Monday) 15:30..17:30 Room 400 |
Textures 1/2 | MiniLab: minilab07.zip |
16 | 2022-05-12 (Thursday) 16:30..18:30 Room 202 |
Textures 2/2 | Game of the Week: The Unfinished Swan by Ian Dallas [devlog] |
17 | 2022-05-16 (Monday) 15:30..17:30 Room 400 |
3D animations: blend shapes | MiniLab: minilab08.zip |
18 | 2022-05-19 (Thursday) 16:30..18:30 Room 202 |
3D animations: skeletal animations 1/2 | Game of the Week: Toribash by Nabi Studios |
19 | 2022-05-23 (Monday) 15:30..17:30 Room 400 |
3D animations: skeletal animations 2/2 Materials in Games 1/2 |
MiniLab: minilab09.zip |
20 | 2022-05-26 (Thursday) 16:30..18:30 Room 202 |
Materials in Games 2/2 Bridge 1: networking for 3D games |
Game of the Week: Switch and Shoot by Matt Glanville |
21 | 2022-05-30 (Monday) 15:30..17:30 Room 400 |
Bridge 2: audio in 3D games | MiniLab: minilab10.zip |
22 | 2022-06-06 (Monday) 15:30..17:30 Room 400 |
Bridge 3: graphics in 3D games | MiniLab: minilab11.zip |
23 | 2022-06-09 (Thursday) 16:30..18:30 Room 202 |
Bridge 4: AI in 3D games | Games of the Week: Return of the Obra Dinn by Lukas Pope [devlog] Quantum Pilot by Quantum Productions |
Suggested textbook:
(No textbook is required)
For the math part: Mathematics for 3D Game Programming
and Computer Graphics
For a subset of the topics: Game Engine Architecture (esp. Part III)
Exam modality:
Written test (in the form of a quiz on a computer, duration 90 Min)
followed by an
oral exam.
Links:
Course page on Ariel
Course abstract
Current rules for lectures at Unimi
C++ Minilab:
What it is not: The C++ MiniLab is not part of this course, and is not related to the exam.
It is not, by any means, mandatory.
What it 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 the 3DVG course. The C++ language is not a subject of the 3DVG course, or of its exam, but it's one of the de-facto standard languages of VideoGames.
When: After every Monday lecture.
Where: In the same room as that lecture!
How long: Approx 1.5h per meeting.
How to partecipate: Just bring a (fully charged!) 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. Live streaming will also be available for remote students.