Ce cours propose une introduction aux algorithmes de l'infographie, en mettant l'accent sur le rendu, avec un bref aperçu de la modélisation et de l'animation.
Nous allons apprendre le pipeline graphique programmable moderne en utilisant de l'OpenGL Shading Language, avec les fragment shaders et les vertex shaders. Pour les trois devoirs, nous allons utiliser WebGL et Javascript; pour la dernière, nous utiliserons C++.
Veuillez consulter la description officielle du cours pour les horaires et les cours préalable.
Professeur: Mikhail Bessmeltsev. L'heure de bureau: vendredi, 16:30-15:30 dans AA 3357.
Contact: Nous utiliserons StudiUM pour toutes les questions. Inscrivez-vous!
Devoirs (48%), examens intra (24%), examen final (28%)
Le cours: mercredis 3:30PM - 5:29PM (CM Z-210) et vendredis 1:30PM - 2:29PM (CM Z-255).
Les notes de cours apparaîtront ici, sans aucune garantie que nous publierons tout. Veuillez venir aux cours!
Sujet | Lien | ||||
---|---|---|---|---|---|
Me | 8 | Jan | Intro | ||
Me | 8 | Jan | Pipeline de rendu | ||
Ve | 10 | Jan | Transformations Géométriques (Pierre Poulin) | ||
Me | 15 | Jan | Projections (Pierre Poulin) | ||
Ve | 17 | Jan | Shaders | ||
Me | 22 | Jan | Pipeline 2 | ||
Me | 22 | Jan | De 3D à 2D: un long voyage | ||
Ve | 24 | Jan | Les transformations affines | ||
Me | 29 | Jan | Les coordonnées homogènes | ||
Me | 29 | Jan | Les transformations composée. Les hiérarchies | ||
Ve | 31 | Jan | La caméra | ||
Ve | 31 | Jan | Les projections | ||
Me | 5 | Fév | Clipping et Rasterization | ||
Ve | 7 | Fév | Rasterization II | ||
Me | 12 | Fév | L'éclairage et le shading | ||
Ve | 14 | Fév | Une revue | ||
Me | 19 | Fév | (Intra 1) | ||
Ve | 21 | Fév | (pas de classe) | ||
Me | 26 | Fév | L'éclairage et le shading (cont.). Les textures | ||
Ve | 28 | Fév | ^ | ||
Me | 4 | Mar | (semaine de lecture) | ||
Ve | 6 | Mar | (semaine de lecture) | ||
Me | 11 | Mar | Test de profondeur. Revue 2 | PDF PDF 2 | |
Ve | 13 | Mar | (L'université est fermée) | ||
Me | 18 | Mar | (L'université est fermée) | ||
Ve | 20 | Mar | (L'université est fermée) | ||
Me | 25 | Mar | L'éclairage global. Lancer de rayons | ||
Ve | 27 | Mar | L'éclairage global. Tracer de chemins | ||
Me | 1 | Avr | ^ | ||
Ve | 3 | Avr | Blending (Mélange) | ||
Me | 8 | Avr | Échantillonnage et aliassage. Interpolation | PDF PDF 2 | |
Ve | 10 | Avr | (pas de classe) | ||
Me | 15 | Avr | La couleur | ||
Ve | 17 | Avr | L'introduction à la modélisation géométrique | ||
Me | 22 | Avr | Une grande revue | ||
Ve | 24 | Avr | L'examen final | 12:00 - 15:00 |
# | Date de sortie | Date limite | Lien |
---|---|---|---|
1 | Jan, 13 | Jan, 27 | [Template] [PDF] |
2 | Jan, 31 | Feb, 14 | [Template] [PDF] |
3 | Feb, 26 | Mar, 11 | [Template] [PDF] |
4 | Mar, 25 | Avr, 8 | [Template] [PDF] |
Chaque devoir doit être remis avant 23:59:59 le jour spécifié. Aucun devoir en retard accepté, sauf avec les jours de tolérance:
Les jours de tolérance Chaque étudiant(e) peut utiliser 3 jours de tolérance par trimestre. Nous rappellerons vos jours de tolérance. Utilisez-les judicieusement. Vous pouvez tous les utilisez sur une même devoir ou les répartir entre les devoirs, comme vous voulez. Les jours de tolérance sont entiers, c'est à dire que si vous avez une heure de retard, vous utilisez un jour de tolérance. Si vous avez utilisé tous les jours de tolérance, un devoir en retard recevra une note 0.
Notes: Vous devrez démontrer que vous comprenez pourquoi le programme fonctionne. Vous devez être en mesure d'expliquer chaque ligne que vous avez écrite. Une condition nécessaire (mais pas suffisante) pour réussir le cours est d'obtenir une note de passage sur les devoirs.
Livres de référence (optionnels): Foundations of 3D Computer Graphics by Steven J. Gortler, MIT Press, 2012 et Fundamentals of Computer Graphics by Shirley, Marschner, 2015
WebGL/OpenGL: official Three.js docs, un bon livre sur WebGL, un tutoriel facile sur WebGL