Langage C OpenGL
Les objectifs
En quelques mots...
Public
Tout public destiné à programmer en utilisant OpenGL
Pré-requis
Bonnes notions de la programmation en C.
Méthodes et Moyens pédagogiques
Formation réalisée en présentiel ou à distance selon la formule retenue
Exposés, cas pratiques, synthèse, assistance post-formation pendant trois mois
Un poste par stagiaire, vidéoprojecteur, support de cours fourni à chaque stagiaire
Modalités de suivi et d'évaluations
Feuille de présence émargée par demi-journée par les stagiaires et le formateur
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Questionnaire d’évaluation de la satisfaction en fin de stage
Auto-évaluation des acquis de la formation par les stagiaires
Attestation de fin de formation
Informations pratiques
Accessibilité , modalités et délais d'accès
Programme mis à jour le 01/09/2022
Programme détaillé
INTRODUCTION D'OPENGL
- Place d'OpenGL sur le marché actuel de la 3D
- Rôle d'OpenGL et compléments nécessaires
- présentation de GLU et GLUT
- Implémentations logicielles et matérielles
PRINCIPES DE BASE
- Définition d'une scène dans un espace en 3D
- Etats de la machine OpenGL
- Dessin géométrique
VISUALISATION
- Création d'une fenêtre de rendu
- Espace de visualisation: Frustum
- Premiers polygones
- Gestion de la couleur
INTERACTIONS
- Introduction au fonctionnement de GLUT
- Callbacks
- Gestion du clavier
- Gestion de la souris
- Redimensionnement de la fenêtre de rendu
MATRICES
- Rôle des matrices de la machine OpenGL
- Matrice de visualisation
- Matrice de transformation
- Rotations, translations
ECLAIRAGE
- Rôle et fonctionnement de l'éclairage
- Simplifications du modèle d'éclairage
- Mise en place et définitions
- Déplacements des sources lumineuses
- Gestion des couleurs
- Gestion des matériaux
- Les normales (déduction et lissage)
- Les spots
LE BLENDING ET LES TRANSPARENCES
- Intêrets et problématique du blending
- Une solution aux superpositions blendées
BROUILLARD
- Au-delà de l'aspect estéthique
- Mise en place
- Les types de brouillard
LISSAGE DES CONTOURS (ANTI-ALIASING)
- Voir et comprendre l'aliasing
- Les différentes méthodes d'anti-aliasing: tracé anti-alisasé, motion blur, supersampling, ...
LISTES D'AFFICHAGE
- Intêrets et inconvénients des listes
- Créer une liste d'affichage
- Rendre les listes stockées
- Extenstions possibles
APPLICATION DE TEXTURES
- Principes du texturage
- Chargement de textures
- Mise en place de coordonnées de texture
- Filtrages (linéraires, bilinéaires)
- MipMapping
- Matrice de texturage
- Extenstions (multitexturing, textures 3D, ...)
- Précisions sur le blending de textures
TAMPONS
- Tampon de profondeur (Z-buffer)
- Tampon d'accumulation
- Tampon "pochoir" (stencil buffer)
- Utilisations avancées des tampons (réflections, blur, stencil shadows, cell shading, ...)
ASPECTS AVANCES D'OPENGL
- Fragmenteurs et quadratiques
- Les évaluateurs (NURBS)
- Physique d'un environnement 3D
- Bumpmapping
- Skyboxes
- Moteur de particules
- Gestion temporelle d'une application temps réel
- Modes "sélection" et "feedback"