
Avez-vous remarqué sur les consoles nouvelle génération à quel point les textures étaient belles ? …et que les personnages avaient des peaux fourmillant de détails ? Tout cela n’est pas dû à une augmentation du nombres de polygones mais au bump mapping, une technique de mise en relief de texture. Ici, je vais vous présenter Crazy Bump, un logiciel de génération de Bump mapping, tout en vous parlant de cette technique.
Oui, du temps de la Playstation, de la Nintendo 64 et autres, on voyait surtout les choses de cette manière : « Pour faire plus beau, il faut plus de polygones et des textures de plus haute résolution ». Mais le Bump Mapping a tout changé. Cette technique permet de donner vie aux textures en changeant ces dernières en fonction de l’angle de la lumière. Les creux sont ombrés quand la lumière est basse ou éclairés quand la lumière est haute, et ce sans aucune 3D. Cette technique est très parlante sur les visages en 3D ou encore les vêtements. Nvidia avait développé une démo présentant tout l’intérêt du bump mapping.
Le Bump Mapping se fonde sur le multitexturing, c’est-à-dire plusieurs textures dont les informations sur le relief sont mises en relation, ainsi que la texture en elle-même.

Pour plus de précisions, de nos jours, le « Bump mapping » en 3D doit réunir deux conditions : le Pixel Shading, et un complexe entre une normalmap et une lightmap. Le Pixel Shading permet un éclairage 3D, pixel par pixel et non par polygones. Le Bump Mapping est articulé sur la source de lumière externe à l’objet 3D, et sa destination, pixel par pixel, afin de calculer « l’angle d’éclairage » de l’objet 3D concerné sur la totalité de la texture lui étant appliquée. Le pixel shading est donc un impératif. Enfin, le complexe, cité ci-dessus, permet de créer le relief sur une texture. La normalmap est une texture invisible mais contenant les informations du relief apparentes pour une lumière perpendiculaire à la surface de l’objet en chaque point, tandis que la lightmap donne les informations sur l’éclairage courant de l’objet. La multiplication scalaire de celles-ci donne l’intensité lumineuse à appliquer en prenant en compte les informations de reliefs (creux et bosses) de la texture. Le premier jeu à révolutionner le milieu, dans son application du Bump Mapping, par la méthode du dot product bump mapping est Doom3 d’IdSoftware.
Depuis, d’autres méthodes ont vu le jour, comme le parallax bump mapping qui est un mélange de Bump mapping et de displacement mapping et qui a la particularité de modifier la géométrie de la texture par un calcul sur l’élévation du relief. Plus gourmande cependant et présentant quelques défauts, cette technique n’est pas encore très présente dans le domaine vidéo ludique, mis à part dans Crysis, à ma connaissance.

Ce qu’il faut retenir, c’est : que le Bump Mapping donne l’illusion de relief, renforçant l’effet de réalisme; qu’il existe des méthodes de Bump mapping dites de parallaxe occlusion (ou Parallax Bump mapping) qui, en plus de donner l’illusion de relief, modifie en quelque sorte la géométrie de la surface texturée.
Pourquoi un tel article sur le Bump Mapping ? Eh bien simplement parce que j’ai découvert il y a peu Crazy Bump, un logiciel permettant de réaliser du bump mapping aisément et, pour une fois, le software n’est pas une grosse usine à gaz. Non pas que je ne connaissais pas le BumpMapping avant cela, mais que c’est une notion importante : très utile pour créer des normalmaps à partir d’une texture et les appliquer au monde de la 3D (3DSmax, Cinema 4D, LightWave… ) ou même pour Photoshop.
Prochainement, je vous ferai une petite vidéo d’un exemple d’application de CrazyBump dans un cas particulier. Cela dit, connaître la différence entre Bump mapping et Parallax Bump mapping ne sera pas nécessaire. J’ai simplifié autant que faire se peut sans trop synthétiser non plus. J’espère ne pas trop avoir perdu d’internautes… Y’a quelqu’un? … sniff.

j’ai rien compris…
c’est trop fort ^^