Bézier

Stage ICube

Bezier

Début : Mai 2013
Durée : 2 mois
Langage : C++
Bibliothèques/Outils : OpenGL 4

Lien vers le rapport de stage détaillé

À la fin de ma seconde année en Licence à Strasbourg, j’éprouvais le besoin de trouver un stage afin d’acquérir des connaissances utiles à la création de jeux vidéo et d’obtenir une expérience professionnelle. J’en parlais alors à l’un de mes professeurs qui me conseilla de regarder les offres de stage du laboratoire ICube, situé à Illkirch, non loin de Strasbourg. C’est en discutant avec un des chercheurs, M. Thery, que je décidais d’y faire un stage, le sujet traitant de programmation 3D en utilisant OpenGL « moderne ».

Avant d’entreprendre ce stage, j’avais déjà passé beaucoup de temps à l’apprentissage d’OpenGL. J’avais pour cela suivi plusieurs tutoriels, expérimenté la création de quelques scènes 3D basiques et lu plusieurs articles sur l’utilisation des dernières versions d’OpenGL.

Le but du stage concernait « l’évaluation et le rendu de surfaces de Bézier via calcul GPU« . Il m’était alors demandé d’utiliser plusieurs fonctionnalités d’OpenGL afin de proposer plusieurs versions du calcul de surfaces. J’ai donc pu réaliser 4 versions différentes :

  • Une version « standard » n’utilisant aucune fonctionnalité avancée d’OpenGL. Cette version était nécessaire pour effectuer une comparaison avec les autres techniques.
  • Une version utilisant un calcul effectué grâce au Vertex Shader.
  • Une version utilisant un calcul effectué grâce au Tessellation Shader.
  • Une version utilisant le « Transform Feedback« .

Il m’aura aussi été demandé de réaliser plusieurs méthodes de rendu comme le Gouraud Shading ou Phong Shading. Plus de détails concernant mon travail et les descriptions complètes des diverses versions développées sont disponibles dans mon rapport de stage.

Ce stage m’aura énormément apporté. J’ai pu largement consolider mes connaissances en programmation 3D, découvrir des méthodes de rendu ainsi que des fonctionnalités avancées d’OpenGL. Je garde un très bon souvenir de ce stage, qui m’aura permis d’éprouver mes limites et de m’améliorer en programmation 3D et orientée objet.