Informatique

Langage C - OpenGL

Langage C - OpenGL

Réf 4-LC-OGL
Durée 5 jours

Objectifs

Appréhender l'API et les concepts importants d'OpenGL, ainsi que les particularités de la 3D temps réel, autant avec le pipeline fixe qu'avec les shaders
Découvrir l'étendu des fonctionnalités d'OpenGL.

Infos

Programme

1. 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

2. Principes de base

  • Définition d'une scène dans un espace en 3D
  • États de la machine OpenGL
  • Dessin géométrique

3. Visualisation

  • Création d'une fenêtre de rendu
  • Espace de visualisation: Frustum
  • Premiers polygones
  • Gestion de la couleur

4. Interactions

  • Introduction au fonctionnement de GLUT
  • Callbacks
  • Gestion du clavier
  • Gestion de la souris
  • Redimensionnement de la fenêtre de rendu

5. Matrices

  • Rôle des matrices de la machine OpenGL
  • Matrice de visualisation
  • Matrice de transformation
  • Rotations, translations

6. Éclairage

  • 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

7. Le blending et les transparences

  • Intérêts et problématique du blending
  • Une solution aux superpositions blendées

8. Brouillard

  • Au-delà de l'aspect esthétique
  • Mise en place
  • Les types de brouillard

9. Lissage des contours : anti-aliasing

  • Voir et comprendre l'aliasing
  • Les différentes méthodes d'anti-aliasing: tracé anti-alisasé, motion blur, supersampling, ...

10. Listes d'affichage

  • Intérêts et inconvénients des listes
  • Créer une liste d'affichage
  • Rendre les listes stockées
  • Extensions possibles

11. 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
  • Extentions : multitexturing, textures 3D, ...
  • Précisions sur le blending de textures

12. Tampons

  • Tampon de profondeur : Z-buffer
  • Tampon d'accumulation
  • Tampon "pochoir" : stencil buffer
  • Utilisations avancées des tampons : réflexions, blur, stencil shadows, cell shading, ...

13. Aspects avancés 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"

En savoir +

Prérequis

Compétences en langage C, quelques notions concernant le monde de la 3D.

Moyens pédagogiques

Formateur expert du domaine, un ordinateur, support de cours remis à chaque participant, vidéo projecteur, tableau blanc et paperboard,feuille de présence signée en demi-journée, évaluation des acquis tout au long de la formation, questionnaire de satisfaction, attestation de stage

Possibilité de certification

Nous consulter.