Création d’une "démo" graphique (2019)

L’objectif de ce projet est l’initiation à la création d’une démo graphique, c’est-à-dire une courte vidéo d’animation réalisée entièrement à base de calculs en temps-réel dans un programme. Ce type de réalisation est particulièrement populaire au sein de la Démoscene : une branche de création graphique informatique, animée par une communauté de programmeurs, mais aussi de graphistes et de musiciens, cherchant à créer de véritables oeuvres à travers leurs programmes.

Compétences à acquérir : OpenGL, shaders, rendu multi-passe, animation/chorégraphie par snippets de programmation explicite…​

20182019 Demo1 20182019 Demo2 20182019 Demo3 20182019 Demo4 20182019 Demo5


Illumination Globale en synthèse d’image

Les méthodes d’illumination globale permettent de simuler précisément le transport de lumière au sein d’une scène virtuelle et produisent des images de synthèse de très haute qualité Nous proposons dans ce sujet de réaliser l’implémentation d’une méthode d’illumination globale offline (Instant Radiosity et BiDirectional Path Tracing), au sein d’un moteur graphique développé par nos soins.

Compétences à acquérir : Moteur 3D, Illumination Globale

IR


Ouya

La puissance grandissante des tablettes et smartphones permet aux jeux créés sur ces supports de rattraper ceux pour consoles de salon. Nous vous proposons d’étudier le système d’exploitation Android et la bibliothèque OpenGL ES dans un premier temps pour pouvoir ensuite développer un moteur 3D. Celui-ci devra être modulaire pour pouvoir évoluer par la suite. Un mini-jeu sera à programmer afin de montrer les capacités du moteur. Une tablette Google Nexus 7 sera à disposition des étudiants pour effectuer des tests, le moteur 3D devant à terme permettre de créer des jeux vidéos sur la console libre Ouya (http://www.ouya.tv/).

Compétences à acquérir : Android, OpenGL ES, moteur 3D

OUYA


Traitement d’images médicales

Le projet consiste à aider un laboratoire de recherches en oncologie à traiter des images de réseaux capillaires (voir un exemple ci-joint en basse définition), en essayant de déterminer l’impact de traitements médicamenteux sur le développement de tels réseaux. L’étude biblio reprendra notamment certains thèmes traités dans le module « Traitement d’images », et l’implémentation devra fournir une interface graphique adaptée aux besoins des biologistes.

TraitementImagesMedicales


Jeu de dames en 3D

Réalisation d’un jeu de dames en 3D (projet de Licence 3)

Une interface graphique 3D représente le plateau du jeu, implémentée avec Java et Java3D; le choix des coups est effectué grâce à un mécanisme de picking. Enfin, un mécanisme d’intelligence artificielle permet à un joueur humain de jouer contre un joueur ordinateur efficace.

Dames


Application webcam + vidéoprojecteur

Projet de Licence 3 ayant pour but de développer une application ludo-éducative utilisant une webcam et un vidéoprojecteur. L’image filmée par la caméra est d’abord capturée, puis traitée de façon à pouvoir en déduire certaines informations comme le cadre de l’image, la détection de couleurs prédéterminées ou la recherche de contours. Une fois ces informations récupérées les mouvements sont détectés, permettant d’envisager plusieurs applications compatibles. Le choix s’est arrêté sur un jeu de « Pong », moins compliqué à mettre en œuvre, où deux joueurs situés de chaque côté de l’écran se renvoient la balle en contrôlant une raquette (implémentation en C++).

Capture


Combat de robots

Ce projet de Master 1ère année consiste à concevoir une plateforme permettant de faire combattre différents types de robots contrôlés par des programmes externes en proposant un affichage 3D temps réel. L’implémentation en C++ utilise le moteur physique ODE pour la gestion des collisions et des déplacements et le moteur graphique OGRE pour l’affichage.

Robots


Calcul automatique de points de vue pour une scène 3D

Ce projet de Master 1ère année a pour but d’améliorer la visibilité d’une scène 3D, d’une part en maximisant pour une vue donnée le nombre de polygones visibles, et d’autre part en proposant un parcours de la scène permettant de passer d’un point de vue à un autre en minimisant les transitions.

L’implémentation en C++ nécessite d’abord de définir la qualité d’un point de vue ainsi que son calcul. Ensuite, un algorithme génétique est utilisé pour l’obtention d’une bonne population de points de vue. Finalement, une trajectoire liant ces points entre eux est construite grâce à un algorithme d’optimisation de type « fourmis », puis parcourue par une caméra virtuelle.

Calculpov