PROPOSITION DE SUJET RESPONSABLE: Fabrice NEYRET EQUIPE: iMAGIS / GRAVIR. CONTACT: Fabrice.Neyret @ imag.fr_ TITRE: Editeur interactif pour les textures procedurales de Perlin. RESUME: Les textures procedurales de Perlin constituent un element majeur des systemes de synthese d'images pour la production audiovisuelle. Elles permettent avec peu de parametres de generer des aspects de surface detailles comme la texture du bois ou du marbre. Le principe repose sur l'evaluation iterative en chaque pixel d'une fonction de turbulence qui reproduit les frequences visuelles caracterisant un materiau. Cependant ces parametres qui doivent etre regles par l'utilisateur graphiste ne sont pas toujours intuitifs, et l'aspect obtenu peut changer radicalement en fonction de leur valeur. Il est donc tres utile de disposer d'un outil permettant de se rendre compte immediatement de l'effet de chaque parametre, afin de mettre au point interactivement l'aspect d'un materiau. Dans l'implementation basique des textures de Perlin, les parametres sont constitues de l'echelle et du degre de fractalite de la fonction de turbulence. Pour les effets que l'on souhaite classiquement obtenir a partir de Perlin, il faut pouvoir transformer une valeur entre 0 et 1 en couleur, en perturbation d'image (ex pour obtenir du marbre), voire en pertubation de normale (ex pour de l'aluminium froisse), ce qui augmente le nombre de parametres a gerer. Le but du stage consiste a implementer ou reutiliser un petit moteur de Perlin classique (on se contentera de visualiser un echantillon de texture sur un carre), puis a developper une interface graphique simple permettant de regler tous les parametres. Cote rendu, il faut pouvoir prendre en compte les changements de reglage au fur et a mesure du trace, et tracer suffisemment vite de maniere a etre veritablement interactif, ce qui peut passer par des optimisations specifiques a cette application (2D, carre, etc). Cote interactif, on peut pousser aussi loin que souhaite', en permettant de memoriser plusieurs reglages (avec leur apparence), voire de specifier un petit script a evaluer en chaque pixel pour mieux exploiter les possibilites de la texture. ( ex: prendre la turbulence et la faire passer dans un filtre ecreteur, puis faire passer le resultat a une table de couleur. ) RESULTAT ATTENDU: implementation en C ou C++ sous OpenGL sur Silicon Graphics, avec probablement Tcl-Motif pour l'interface graphique et les scripts. Le resultat du programme est simplement le vecteur de parametres finaux auquel parvient l'utilisateur, mais le programme pourra aussi tout naturellement s'inserer dans la plateforme Fabule developpe a iMAGIS, qui permet de faire communiquer via TCL les divers outils de specification de scenes de synthese animees (modeleur, animation physique).