Programmation graphique TD 6 : Lego Star Wars, le retour du Jedi
Transcription
Programmation graphique TD 6 : Lego Star Wars, le retour du Jedi
Programmation graphique TD 6 : Lego Star Wars, le retour du Jedi 01 avril 2008 Pour avoir des bonshommes Lego qui ressemblent plus à des bonshommes Lego, on utilise des cylindres pour la tête et le sabre laser. Les cylindres sont définis comme primitives dans elsa2:/home/enseign/scollang/graphique/td5/ primitives.cpp et primitives.hpp. Le nouveau bonhomme est décrit dans lego.cpp et lego.hpp, au même endroit. 1 Coordonnées de textures et normales 1. On veut appliquer la texture du visage sur la tête cylindrique. Calculer et ajouter les coordonnées de texture. 2. On voit les facettes du faux cylindre sur le manche du sabre laser. Calculer le vecteur normal en chaque sommet et le donner à OpenGL. 2 Retour aux shaders On veut faire un rendu de type dessin animé (toon shading). On veut : – des traits sur les bords des objets, – des aplats de couleur au lieu de dégradés. 3. Pour les objets aux arêtes vives comme les parallélépipèdes, on rajoute des lignes à dessiner (en les décalant légèrement devant l’objet). 4. Pour les objets courbes comme les cylindres les bords vont dépendre du point de vue. Comment les dessiner avec le pixel shader ? 5. Toujours avec le pixel shader, comment faire des aplats de couleur ? 1