Textures Bitmap ou Textures Procédurales ?

Un objet 3D est défini par ses polygones, identifiables par un "maillage" visible lorsque l'affichage est configuré en "Fil de Fer". Mais en affichage Direct3D, OpenGL ou bien au moment du rendu, ce maillage n'est plus visible : les faces sont pleines et peintes de couleurs unies ou de motifs. Le logiciel applique toujours un "Shader" par défaut qui est d'une teinte blanche avec des réglages de diffusion ou de brillance standard.

Les définitions exposées ici sont valables pour tous les logiciels de 3D.

Dans tS, l'utilisateur peut changer ces réglages par l'icône "Paint Object". Un clic sur cette icône ouvre un panneau de prévisualisation des reglages appliqués à une sphère, mas aussi plusieurs autres panneaux destinés à effectuer les réglages les plus fins. Ces panneaux ne sont pas identiques dans toutes les versions.

On regroupe tous ces réglages sous le nom de "Shaders". Quatres paramètres sont à prendre en compte : le motif ou la couleur, la transparence, le relief (bump) et enfin le mode de réflexion de la lumière.

C'est le premier de ces paramètres qui sera étudié ici.

 

 

Le panneau de la version 5 est evidemment le plus abouti de toutes les versions ; tout est visuel et les panneaux d'options sont compactable à volonté. L'accès au choix de couleur ou de motif s'effectue par un clic-droit sur l'icône "Color" en heut du panneau de prévisualisation. Dans la version 4, le clic-droit s'effectue sur la petite sphère du panneau principal "Shader".

S'ouvre alors un autre panneau dans lequel on choisira le type de motif à appliquer. Il faut alors faire la distinction entre les motifs basés sur une image 2D de ceux qui reposent sur des fomules matématiques de remplissage.

Le seul type qui soit purement bitmap est "Texture Map". On trouve aussi des couleurs unies ("Plain Color") ou des dégradés ("Simple Gradient"), mais surtout des motifs basés sur des fonctions procédurales.

Deux écoles s'affrontent quelquefois chez les artistes 3D entre les pro-texture bitmap et les pro-texture procédurale. Le débat est en réalité plus une question de style artistique personnel que de choix technique idéal.

Pour représenter un objet avec réalisme, l'artiste a nécessairement besoin d'utiliser un motif qui corresponde avec la réalité. Deux choix s'offrent à lui : tenter d'appliquer une image 2D dessinée, ou mieux, tirée d'une photo, ou bien choisir un type de remplissage procédural disposant de réglages permettant d'approcher au plus près le motif réel.

 

 

Texture Bitmap

Texture Procédurale

Avantages et inconvénients du bitmap :

Le bitmap, surtout lorsqu'il est tiré d'une photo, présente généralement une grande varitété de teintes, des motifs précis et non répétitifs, des effets d'ombre naturelle et donc de relief. Pour représenter un plancher en bois, une image bitmap de planches avec nervures, noeuds, contrastes de teintes, etc. serait la texture idéale parce qu'elle donne parfaitement l'illusion de la réalité. Pourtant dans les faits, il n'est pas toujours facile de pouvoir procéder ainsi :

- La texture bitmap étant un fichier image, elle est par nature constituée d'un champ de pixels et donc tributaire de sa résolution en nombre de pixels. Une image d'une petite taille appliquée sur une grande surface sera étirée. Elle perdra alors toute sa finesse pour donner, au mieux, de grosses taches floues. A l'inverse, une grande image appliquée sur une petite zone verra ses détails fusionner et perdra de son réalisme.

- Pour remédier à ce problème d'étirement de la texture, il est possible de paramétrer son application de façon à la multiplier en autant de copies reproduites côte à côte. Là encore, cela peut poser un problème : celui d'une jonction harmonieuse entre les bords de l'image. Si la partie droite du plancher est claire et la partie gauche sombre, alors une répétition de l'image soulignera la jonction par une brusque différence de teinte pas naturelle du tout.

- L'application sur une surface plane d'une photo de plancher vu de dessus ne posera pas de problèmes particuliers en dehors de ceux cités ci-dessus mais si la photo présente le moindre effet de perspective, le résultat sera faussé.

- La question du mapping UV, c'est à dire de la manière dont l'image 2D enveloppera le volume 3D est ici plus cruciale encore que pour les textures procédurales. Toute inadéquation entre l'image et le mapping UV sera flagrante.

-Enfin, il n'est pas toujours possible de disposer d'une image correspondant précisément à l'utilisation souhaitée et le temps nécessaire à réaliser un dessin suffisament réaliste est souvent rédhibitoire.

Avantages et inconvénients du procédural :

Une texture procédurale est quelquefois basée sur une petite image 2D qui sert de référence aux modificateurs mathématiques mais souvent elle n'est issue que d'une "simple" équation définissant des formes et des couleurs à partir d'équations. Le résultat est d'une grande finesse d'autant qu'un facteur aléatoire peut être introduit dans la formule pour reproduire un "grain" naturel. Il existe une grande variété de textures procédurales, chacune laissant à l'utilisateur le soin de paramétrer couleurs, formes, détail. A peu près toutes les natures de surfaces peuvent ainsi être reproduites.

Plus besoin de disposer d'une grande bibilothèque de textures bitmap : la même texture procédurale servira à réaliser du sable, du gravier, du papier de verre, du crépis, etc... En quelques réglages, la suface de l'objet sera couverte de manière uniforme, régulière et harmonieuse.

Pourtant la force des textures procédurales est aussi leur faiblesse. Pour réaliser un mur de salle de bain, une texture procédurale fera de très beaux carreaux de faïence. Mais dans la nature, une surface est rarement régulière sur une grande zone : un mur de briques, même neuf, présente toujours quelques briques aux teintes plus claires ou plus sombres, et il y a toujours des taches de ciment quelque part. La version 5 de TrueSpace permet d'utiliser l'outil "3D Paint", un outil de peinture traditionnel sur surfaces 3D, sur des objets déjà habillés de textures. Il sera judicieusement exploité pour ajouter des taches de rouille ici ou là ou pour assombrir et éclaircir certaines parties de l'objet.