sur psx il y avais le gauraud shading utiliser sur plusieurs jeu(ex:tobal1/2)qui peut etre considerer comme le precurseur du cell shading.
Le Shading consiste à appliquer des modèles d’illumination pour remplir les triangles.
Plusieurs façons de gérer les couleurs à l’intérieur des triangles existent :
I) Le ‘Flat Shading’
Avec le flat shading, la couleur de chaque triangle est uniforme :
‘Z-Flat’ : la couleur du triangle est déterminée à partir de son altitude
‘Lambert Flat’ : la couleur est déterminée à partir de la normale au triangle suivant le modèle d’illumination de Lambert, mais on peut aussi appliquer le modèle de Phong qui rajoute les highlights.
Cette méthode présente l’avantage d’être très rapide.
Mais on obtient un effet de facettes assez désagréable.
II) Le ‘Gouraud Shading’
Cette méthode interpole la couleur de chaque pixel du triangle à partir de la couleur de chaque sommet : celle-ci est calculée à partir des normales associées aux sommets respectifs, qui sont sensées être les normales à la surface représentée. (en fait on fait souvent une approximation de la normale à un sommet à partir des normales au triangles contenant ce point)
Il est facilement implémenté dans l’algorithme des Scanlines, où la couleur est tout d‘abord interpolée le long des arêtes, avec des deltas constants, puis elle est interpolée le long des segments (Scanlines) , toujours avec des deltas constants.
Son avantage est d’être nettement plus beau que le flat (l’effet ‘facettes’ disparaît), et il n’est pas vraiment beaucoup plus lent que le flat.
Mais dans le cas de l’utilisation du modèle d’illumination de Phong, il n’est pas capable de rendre correctement les ‘Highlights’ : le maximum d’intensité, se trouvant généralement à l’intérieur d’un triangle, n’est pas pris en compte par ce modèle.
III) Le ‘Phong Shading’
Ici, ce n’est plus la couleur qui est interpolée, mais les paramètres du modèle d’illumination : chaque pixel du triangle a une couleur calculée directement à partir du modèle choisi.
Cette méthode ne présent d’intérêt que pour les modèles d’illumination de Lambert et Phong :
c’est celle qui rend le mieux les ‘Highlights’, et c’est la seule permettant le Bump-Mapping.
Mais elle est très gourmande en puissance processeur.
(c’est une des raison pour lesquelles elle n’est pas encore gérée par les processeurs graphiques 3D)
Remarque :
Généralement, les normales sont interpolées linéairement sur le triangle à partir des normales aux sommets (comme pour les couleurs dans le Gouraud Shading), mais il est aussi possible d’utiliser un meilleur lissage avec des courbes de Bézier et autres Splines (B-Splines, C-Splines), ou encore déduire les normales à partir de l’équation de la surface si on la connaît.
dans quelque jours je vous ferais un article sur le cell shading!
a+