Retour en haut de la page

Langage C: OpenGL

5 jours - 35 heures

Objectifs

Ce stage offre la possibilité de maitriser l'API OpenGL et de découvrir ses possibilités avancées pour permettre la programmation d'applications 3D temps réel de grande qualité.

Participants

Tout public destiné à programmer en utilisant OpenGL.

Prérequis

Bonnes notions de la programmation en C.

Pédagogie

La pédagogie est basée sur le principe de la dynamique de groupe avec alternance d'apports théoriques, de phases de réflexion collectives et individuelles, d'exercices, d'études de cas et de mises en situations observées. Formation / Action participative et interactive : les participants sont acteurs de leur formation notamment lors des mises en situation car ils s'appuient sur leurs connaissances, les expériences et mettront en œuvre les nouveaux outils présentés au cours de la session.

Profil de l’intervenant

Consultant-formateur expert. Suivi des compétences techniques et pédagogiques assuré par nos services.

Moyens techniques

Encadrement complet des stagiaires durant la formation. Espace d’accueil, configuration technique des salles et matériel pédagogique dédié pour les formations en centre. Remise d’une documentation pédagogique papier ou numérique à échéance de la formation.

Méthodes d’évaluation des acquis

Exercices individuels et collectifs durant la formation. La feuille d’émargement signée par demi-journée ainsi que l’évaluation des acquis de fin de stage sont adressées avec la facture.

Programme

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

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 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"

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

1086 log-406.pdf