TP Image de Synthèse - OpenGL
Lancer de rayons

Présentation

Le but de ce TP est de réaliser un programme permettant de générer des images en utilisant la technique du lancer de rayon. Cette méthode permet de générer des images d'une grande qualité, en prenant en compte des effets de lumière complexes.

Un affichage en 3D comme celui proposé par OpenGL n'est absolument pas nécessaire pour créer un tel programme. L'un des buts de ce TP est néanmoins de vous persuader de l'utilité et de la simplicité d'une telle visualisation pour la mise au point de l'algorithme. Plus généralement, cet affichage vous sera utile pour la mise au point d'algorithmes géométriques, lors de vos travaux en DEA ou ensuite.

Les autres objectifs sont, outre la prise en main d'OpenGL, la mise en pratique des notions étudiées en cours, comme l'utilisation des modèles de matériaux, le placage de textures, la modélisation géométrique, les ombres. Nous aborderons également quelques notions plus générale comme l'utilisation de fichiers XML ou la structuration logicielle.

Les premières étapes du TP sont très cadrées, en limitant volontairement les fonctionnalités, afin que vous puissiez tous obtenir vos premières images de résultats. Ensuite, et ensuite seulement, il sera enrichi.

Les soutenances auront lieu le jeudi 1er décembre.

Code de départ

Un squelette de programme utilisant libQGLViewer vous est donné. Vérifiez qu'il fonctionne en faisant:
tar -xzf RayTracer.tar.gz
cd RayTracer
qmake
make
./rt
Vous pouvez ensuite le compléter en suivant les étapes du TP.

Ressources supplémentaires

Si ce n'est déjà fait, allez lire la page d'introduction de QGLViewer pour comprendre les notions de repère monde et de rayon de la scène. La documentation et les exemples sont également disponibles dans /usr/local/share/doc/QGLViewer sur chaque machine (Linux).

Ce TP ressemble beaucoup à celui qui est fait au MIT dans le cours de Frédo Durand et Barb Cutler. Vous y trouverez de très nombreuses explications (fonctionnement et implémentation d'un ray tracer, notions de C++ et d'algèbre linéaire, ...) et je vous conseille vivement de vous y reporter.

Informations

Je mettrai ici les nouvelles informations concernant le TP. Venez consulter de temps en temps cette page (faites un Reload pour forcer la mise à jour).

Mardi 21 Novembre 2006

La page soutenances a été mise à jour. Il vous faut aller la lire.

Mardi 3 Octobre 2006

Les soutenances des TPs auront lieu le Mercredi 29 Novembre. La page 'soutenances' sera mise à jour courant novembre.

Lundi 2 Octobre 2006

Si vous voulez faire une partie du TP chez vous, voici ce qu'il faut installer :

Vendredi 29 Septembre 2006

Cours OpenGL et présentation du TP. 14h-17h.