Cours de Programmation Graphique (OpenGL)

La prochaine séance (le 10/01/2014 - dernière séance avant le rendu projet) se passera au bocal. Les versions béta de vos projets sont à rendre au plus tard le Lundi 13 janvier. La version finale sera rendue au plus tard le jeudi 16 janvier et soutenue individuellement le lendemain, vendredi 17 janvier 2014 en A179.

Projets
 
La liste des projets accompagnés de leur descriptif est téléchargeable ici.
 
Documentation
 
 
Pré-projet
 
  • Descriptif : le principe du pré-projet est de réaliser votre premier moyen-programme OpenGL. La validation du pré-projet rendra possible le choix d'un projet pour la validation de l'UE. Il s'agit de donner la possibilité à l'utilisateur de se balader dans un univers virtuel pseudo-infini dans lequel il doit cueillir des champignons ... mais attention, il y a 3 type de champignons : les cèpes (bons), les bolets satan (mauvais et mortels si jauge à zéro) et les amanites phalloides (ces amanites sont immédiatement mortelles). La démonstration ci-après donne quelques indications sur le résultat attendu. Les textures utilisées sont fournies plus loin.
  • Démo :
  • Textures réutilisables : cepe.bmp, feuilles.bmp, phalloide.bmp, satan.bmp
 
Téléchargements
GLUT   SDL
 
Premier exemple minimaliste fait avec GLUT : glutGLexemple01-1.0.tgz   Premier exemple minimaliste fait avec SDL : sdlGLexemple01-1.0.tgz
 
Perspective + coloriage de triangle avec GLUT : glutGLexemple02-1.0.tgz

  Perspective + coloriage de triangle avec SDL : sdlGLexemple02-1.0.tgz
Voir ci dessous.  
    Exemple d'éclairage plus différents modes OpenGL. Une fonction sphere est à implémenter comme vu en cours : sdlGLexemple03-1.0.tgz
 
Sphère, de fabrication maison, éclairée : glutGLexemple04-1.1.tgz. Voir les fonctions de gestion clavier pour les différents modes.   Sphère, de fabrication maison, éclairée : sdlGLexemple04-1.1.tgz. Voir la fonction de gestion clavier pour les différents modes.
Version glut non fournie.  
    Manipulation de l'éclairage sur la sphère : sdlGLexemple04-1.2.tgz. Voir la fonction de gestion clavier pour les différents modes.
 
Exemple minimaliste de placage de texture : glutGLexemple05-1.0.tgz. Contient une fonction de chargement d'une BMP.   Exemple minimaliste de placage de texture : sdlGLexemple05-1.0.tgz.
ND  
    Placage de textures avec 3 types de filtrage (modifier en appuyant sur 'm') + gluLookAt (la caméra par GLU) : sdlGLexemple06-1.0.tgz
ND  
    Exploration d'un Univers pseudo-infini : sdlGLexemple07-1.0.tgz
ND  
    Où est le nord ? Boussole + gravité : sdlGLexemple08-1.0.tgz

Attention, les exemples ci-dessous utilisent l'ancienne syntaxe et n'implémentent pas les VertexArrays

ND  
    Mini système de particules : sdlGLexemple07-1.0.tgz
 
Arrêtez les sphères qui tournent en cliquant dessus (utilise le mode sélection de GL + gluPickMatrix) : glutGLexemple08-1.0.tgz   Arrêtez les sphères qui tournent en cliquant dessus (utilise le mode sélection de GL + gluPickMatrix) : sdlGLexemple08-1.0.tgz
ND  
    Sphère in the mirror : sdlGLexemple09-1.0.tgz
ND  
    Ombre portée : sdlGLexemple10-1.0.tgz
Par Vincent Boyer : Programme illustrant l'envoi de geometrie au GPU avec GL4.0
Encore plus ...
  • Programmation OpenGL par Vincent Boyer : ici
  • NeHe : ici
  • Les tutoriels NeHe en français : ici
  • Tutoriels LightHouse3D : ici
  • La page OpenGL de Nate Robins : ici

 

Farès Belhadj

 

<-