Université du Québec en Outaouais Département d'informatique et d'ingénierie
Sigle : INF1483  Gr. SO
Titre : Programmation graphique 2D/3D
Session : Hiver 2017  Horaire et local
Professeur : Tawbe, Bilal
1. Description du cours paraissant à l'annuaire :

Objectifs

Permettre à l'étudiant de maîtriser par la pratique la programmation graphique, les techniques d'animation et la synthèse d'images 2D/3D.

Contenu

Espace bidimensionnel/tridimensionnel et coordonnées. Interaction graphique et appareils logiques d'entrée-sortie. Transformations géométriques et projections : translation, rotation, homothétie, etc. Courbes et surfaces. Effets d'optique: modèle simple de la lumière. Textures et ombrages. Rendu de volume. Programmation d'applications 2D/3D et utilisation de librairies graphique (ex. OpenGL, DirectX, etc.). Implantation de la caméra virtuelle. Algorithmes de synthèse d’images 2D/3D.
2. Objectifs spécifiques du cours :
À la fin de ce cours, l’étudiant(e) connaîtra:
  • les principes de base de l'infographie;
  • les principes d'utilisation des APIs pour l'infographie (cas OpenGL);
  • les transformations géométriques 2D/3D;
  • les techniques de rendu d'objets 2D/3D;
  • les principes d'illumination et d'ombrage en OpenGL.
3. Stratégies pédagogiques :
Les formules pédagogiques suivantes seront utilisées:
  • Cours en supervision individuelle
4. Heures de disponibilité ou modalités pour rendez-vous :
Bureau : À venir

Téléphone : À venir

Courriel : : tawb01@uqo.ca

5. Plan détaillé du cours sur 15 semaines :
Semaine Thèmes Dates
1    Introduction à l'infographie
  • Concepts de base de l'infographie.
  • Applications de l'infographie.
  • Les systèmes graphiques 2D/3D.
  • Pipeline graphique (modélisation, rendu, animation).
Introduction à OpenGL
  • Outils de programmation graphique.
  • Application Programmer Interface de OpenGL.
  • Introduction à OpenGL: fonctions graphiques, librairies, projections, coordonnées, primitives géométriques.

Travaux dirigés 1 : 27 janvier 2017.

16 jan. 2017 
2    Programmation de base en OpenGL
  • Tableaux de sommets. Listes d'affichage. Texte. Programmation des boutons de la souris et touches. Menus. Plans de découpage. La fenêtre d'observation. Multifenêtrage. Traitement d'erreurs.

Transformations géométriques

  • Systèmes de coordonnées 2D/3D et notion de vecteurs.
  • Coordonnées homogènes.
  • Translation, rotation, changement d'échelle et cisaillement.
  • Matrices de transformation OpenGL.

Transformation de vision et projections

  • Caméra, placement des objets, vues.
  • Matrices de projections.
  • Projections : perspective, parallèle, orthographique.
  • Projections et vues avec OpenGL.

Travaux dirigés 2 : 27 février 2017.

13 fév. 2017 
3    Représentation d'objets 3D
  • Polyèdres et surfaces quadriques.
  • Objets et collisions.
  • Fonctions d'OpenGL pour les objets 3D.

Illumination et ombrage

  • Modèle d'illumination locale.
  • Sources lumineuses : ponctuelle, directionnelle, surfacique.
  • Propriétés des surfaces et réflexions.
  • Modèle de réflexion de Phong.

Texture et effets visuels

  • Bump mapping.
  • Plaquage linéaire de texture.
  • Plaquage planaire de texture.

Animations et fonctions interactives

  • Modélisation d'objets.
  • Modélisations des animations.
  • Fonctions interactives d'OpenGL.
  • Effets spéciaux.

Travaux dirigés 3 : 6 avril 2017.

13 mars 2017 
4   

Examen final

10 avr. 2017 
5    01 jan. 2017 
6    01 jan. 2017 
7    01 jan. 2017 
8    01 jan. 2017 
9    01 jan. 2017 
10    01 jan. 2017 
11    01 jan. 2017 
12    01 jan. 2017 
13    01 jan. 2017 
14    01 jan. 2017 
15    01 jan. 2017 
6. Évaluation du cours :
L'évaluation est l'appréciation du niveau d'apprentissage atteint par l'étudiant(e) par rapport aux objectifs des cours et des programmes. Dans le cas spécifique du cours Programmation graphique 2D/3D l'attribution des notes se fera selon la répartition suivante :
  • TP1: 25 %
  • TP2: 25 %
  • TP3: 25 %
  • Examen final: 25 %

Une moyenne générale inférieure à 50% est éliminatoire et conduit automatiquement à l'échec de l’étudiant(e). Les travaux dirigés se feront individuellement. La pénalité de retard pour la remise d’un travail est de 2 points par jour (y compris les jours fériés et les fins de semaine).

7. Politiques départementales et institutionnelles :
8. Principales références :
Notes de cours
  • Des notes de cours détaillées seront fournies couvrant la matière du cours.
Autres références recommandées
  1. D. Hearn, M.P. Baker, W.R. Carithers, Computer Graphics with OpenGL, 4e edition, Prentice Hall, 2010
  2. S. Guha. Computer Graphics through OpenGL: From Theory to Experiments, CRC Press, 2011.
  3. D. Shreiner, G. Sellers, J. Kessenich et B. Licea-Kane. OpenGL: programming guide. Addition-Wesley, 2013.
  4. E. Angel, D. Shreiner, Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL, 4ème edition, Addison-Wesley, 2011.
  5. P. Shirley et al., Fundamentals of Computer Graphics, 3ème edition, A K Peters 2009.
  6. E. Angel, OpenGL. A Primer, Addison Wesley, 2008.
9. Page Web du cours :
https://moodle.uqo.ca