A
la découverte du cel-shading

Le cel-shading est un modèle d'illumination
permettant de donner à un objet 3d un style "bande
dessinée". "cel" dans "cel-shading" est une abréviation
de "celluloïde", "shading" voulant dire en anglais
"ombrage ". Dernièrement cette technique a été souvent
utilisée dans des jeux vidéos. Quelques exemples :
XIII, Zelda the wind waker, Jet set radio futur, DBZ
budokaï 2 et bien d'autres.
Modèle d'illumination
de Gouraud
Un objet en 3d est composé de polygones.
Lorsque l'on trace chaque pixel d'un polygone on calcule
la quantité de lumière à partir des valeurs de lumière
des sommets. Si on interpole les quantités de lumière
des sommets de façon linéaire, on obtient un dégradé
linéaire. Ce modèle s'appelle le modèle d'illumination
de Gouraud. Un modèle plus élaboré et plus réaliste
que celui de Gouraud existe: le modèle de Phong, mais
ce modèle plus lourd en calcul n'est utilisé que dans
les programmes de rendu comme 3dsmax qui sont des
programmes qui n'ont pas besoin de fournir plus de
24 images par seconde. Etant donné la faible amélioration
du réalisme face à la rapidité du modèle de Gouraud,
le Phong n'est pas vraiment utilisé dans les jeux.
Le cel-shading
A la différence du modèle de Gouraud,
le cel-shading n'interpole pas vraiment la lumière.
Lorsque l'on trace chaque pixel du polygone on vérifie
s'il est dans l'ombre ou non (on peut effectuer un
léger dégradé à la transition "ombre/lumière"). Le
problème c'est que les programmeurs de jeux utilisent
des algorithmes contenus dans des librairies toutes
faites comme Opengl ou Direct3D qui ne permettent
pas de modifier la manière dont est effectué le dégradé
de lumière. Cela est peut-être dû à l'incapacité des
cartes graphiques actuelles d'effectuer un dégradé
non linaire en temps réel (à vérifier). Une astuce
consiste à désactiver la lumière et de creer l'ombrage
sur une texture que l'on applique a notre objet. On
effectue la création de cet ombrage en temps réel
de manière à ce qu'il change lorsque l'on bouge l'objet
par rapport la source de lumière. L'effet "bande dessinée"
n'est pas totalement achevé tant que les objets n'ont
pas de traits définissant leurs contours. Pour cela
il faut tracer les contours des polygones cachés en
traits noirs de plusieurs pixels de largeur, et de
tracer les polygones visibles par-dessus, ainsi les
traits noirs dépassent en formant le contour de l'objet.
Pour plus d'informations techniques je vous invite
à consulter les tutoriaux dont vous trouverez les
liens dans cette page.
Le cel-shading
en animation
Utiliser de la 3d dans des films d'animations
permet entre autre de faire des mouvements de caméra
très difficilement faisable en dessin classique. Les
translations de caméra aussi appelée 'scrolling' ne
sont pas trop difficiles à faire à la main, on dessine
une image de bonne qualité plus large que l'écran
puis ensuite on la déplace par exemple horizontalement.
Les rotations de caméra sont beaucoup plus dures à
faire car il faut redessiner chaque image du décor,
ce qui est un travail titanesque à la main. Une astuce
est de dessiner une image panoramique et de faire
un scrolling (déjà pas facile). Avec la 3d on peut
créer un univers complet en images de synthèse puis
on fait déplacer la caméra dedans comme on veut. Et
le cel-shading dans tout cela ? Et bien presque à
chaque fois que les réalisateurs ont inclus de la
3d dans leur films pour faire des mouvements de caméra
bizarroïdes, ils n'ont pas réussi à ce débarrasser
de l'effet plastique lié à l'image de synthèse. (L'Atlantide,
Disney. Le voyage de Chihiro, Miyazaki) Avec le cel-shading
on est beaucoup plus près du dessin à la main, bien
que je l'accorde il sera difficile (mais peut-être
possible) avec cette technique de donner un effet
d'aquarelle que l'on retrouve dans beaucoup de décors.
Faire un objet 3d est difficile d'autant
plus s'il s'agit d'un personnage mais lorsqu'il est
fait on peut faire un nombre infini de vues différentes
avec, alors qu'en dessin classique il faut tout redessiner
à chaque image. De plus en appliquant des déformations
à l'objet on peut par exemple faire bouger les membres
du personnage. Les personnages en images de synthèse
ont souvent le défaut d'avoir des mouvements de robots
quand ils bougent mais ces derniers temps les infographistes
ont fait d'énorme progrès dans le domaine (ex: Final
Fantasy: the spirits within) notamment grâce à la
motion capture (acquisition des mouvements sur des
acteurs réels). Actuellement le cel-shading est difficile
(mais pas impossible) a appliquer sur des personnages
mais l'on peut très bien l'utiliser pour des objets
qui demande moins de déformation comme une voiture
par exemple.
Le cel-shading est actuellement surtout
utilisé pour donner un effet 'dessins animés' à des
jeux vidéos, mais pourrait devenir un outils très
utile pour les dessinateurs de films d'animations.