Une texture est à l’origine une image en 2D composée de milliers de pixels. De loin, elle est jolie car les pixels se mélangent, mais de près, des carrés qui correspondent aux différents pixels composant la texture apparaissent. Elle est donc moins agréable à l’œil de près que de loin. On utilise donc le Bilinear Filtering afin de rendre les transitions entre les pixels plus douces. Cette technique consiste à mélanger les couleurs d’un pixel avec celles des quatres autres pixels les plus proches. Les transitions entre les pixels se font ainsi plus douces et les textures paraissent plus uniformes. Le problème avec cette technique est l’impression de flou qu’elle provoque si elle est utilisée abusivement.
Ci dessous, nous pouvons voir la différence entre une image 3D sans utilisation du Bilinear Filtering el la même image 3D après utilisation du Bilinear Filtering .

Image 3D sans application du Bilinear Filtering

Image 3D avec application du Bilinear Filtering
Les textures servent à assigner différentes caractéristiques de surface à chaque objet de la scène, qui déterminent si tel objet aura un aspect lisse ou rugueux, brillant ou mat, transparent ou opaque, ou encore son niveau de réflexion, de réfraction ou de luminescence. Tout d’abord, il faut préparer les textures qui seront appliquées au squelette de l’objet. Pour ce faire, il faut dessiner chaque texture de l’objet grâce à un logiciel de dessin. Une texture est généralement composée d’une couleur de base ou d’une image. On y affecte des paramètres de surface tels que la brillance, le reflet, le relief et la transparence.
Dans la plupart des logiciels de rendu, les textures sont souvent caractérisées par différents canaux. Ces canaux sont généralement : Couleur, Eclat, Brillance, Transparence, Bosses, Réflexion, Réfraction et Lueur. En fait, les canaux doivent définir tous les paramètres d’une texture. Ils définissent le comportement d’ un rayon lumineux rentrant en contact avec l’objet et ceci selon les lois de la physique.
Par exemple, pour un calcul par la méthode dite du lancer de rayons (Raytracing), les lois physiques utilisées sont celle de l’optique. La définition de ces canaux permet donc de simuler des matériaux complexes tels que le bois verni, de l’or martelé et du granite brut.
Le canal Couleur correspond en fait à l’apparence de l’objet, c’est à dire à la manière dont celui-ci serait perçu s’il était regardé dans un environnement contenant une lumière absolument neutre. Ce canal peut contenir soit une couleur de base du logiciel, ou encore un motif complexe créé par le concepteur de l’image.
Eclat et Brillance sont deux canaux particulièrement importants pour simuler des reflets sur un objet. Ces taches ou ces traînées brillantes sont des reflets directs des sources lumineuses, comme les rayons du soleil réfléchis par une plaque métallique. Ces canaux définissent l’intensité, la couleur du reflet, ainsi que sa taille.
Le canal Bosses est très utile afin de modéliser les aspérités et irrégularités à la surface de la matière. Par exemple, sans ce canal, il faudrait être vraiment courageux pour modéliser une orange, car chaque aspérité devrait être définie dans les trois dimension, alors que dans le canal bosses, il suffit de modéliser une sphère et d’appliquer dans ce même canal un motif représentant les aspérités de la peau d’une orange.
En fait, en plaçant des composantes dans le canal bosse, on vient perturber une surface initialement lisse. Cette technique est appelée bosselage. Mais cette technique ne modifie pas la topologie réelle d’un objet, c’est à dire qu’aucun point de la surface de l’objet n’est déplacé. L’objet reste toujours lisse. En fait, cette technique modifie l’angle selon lequel la lumière est renvoyée à certains emplacements de la surface. Cette technique ne génère donc qu’une illusion d’optique qui à ses limites lorsque l’objet est vu de profil.

Des textures de boules de billard qui seront appliquées au squelette des boules plus tard
Les textures procédurales sont la première façon de créer des motifs complexes pour les canaux de texture. Elles permettent en fait de simuler des matières naturelles comme le bois, le marbre, des taches, un mélange ou encore de créer des textures utiles en produisant par exemple un damier ou une grille. Ce ne sont que des fonctions paramétrables. Les fonctions citées précédemment ont leurs paramètres qui ne varient qu’en fonction de la position sur la surface et de quelques paramètres entrés par l’utilisateur. Il existe toutefois des textures dont les paramètres varient en fonction de la position dans l’espace comme par exemple les textures de montagnes qui changent fortement en fonction de l’altitude.
La fonction « damier » crée un motif en damier. L’utilisateur doit rentrer la couleur de la première case et de la seconde ainsi que la taille des cases. Le logiciel calcule ensuite les variations de la texture grâce à ces paramètres.
La fonction « grille » fonctionne un peu de la même manière, sauf qu’elle génère une grille. Le principe de calcul est le même. Cette fonction permet de créer des motifs plus complexes que pour la fonction « damier ».
La fonction « taches » permet de créer des taches de couleur sur une surface et de paramétrer leurs caractéristiques telles que leur taille, leur répartition et leur diffusion.
La fonction « bois » crée un motif de veinages qui est généré à l’aide de paramètres assez complexes. Il en est de même pour la fonction marbre où des marbrures sont générées.
Une fois toutes les textures faites, il reste à les organiser dans un catalogue de textures. Il permet de classer toutes les textures et donc de n’afficher que les textures dont on a besoin. Dans le cas où l’utilisateur à besoin d’appliquer une texture marbre, il n’a qu’à ouvrir dans le catalogue de texture le fichier marbre. Ainsi, il aura sous les yeux toutes les textures de type marbre. Ce catalogue permet un gain de temps considérable lors de l’application des textures, ainsi qu’une économie de place non négligeable.
Il suffit ensuite d’affecter la texture désirée à l’objet choisi. Cette texture est appelée texture primaire. En effet, on peut aussi ajouter d’autres textures à l’objet qui n’en recouvrent qu’une partie. Pour ce faire, on définit les limites d’application de la texture voulue sur l’objet. On transmet ensuite les coordonnées des limites au logiciel qui adapte la texture à la taille désirée. Il suffit ensuite de plaquer la texture à l’endroit défini. Le fait que ces autres textures soient gérées en multicouches est particulièrement intéressant car les textures du dessous agissent sur la représentation de l’objet. Par exemple, si la texture du dessus est une étiquette transparente avec des inscriptions opaques, les zones transparentes laisseront apparaître plus ou moins la texture du dessous selon le niveau de transparence de la texture du dessus ( défini par le canal transparence ). De même que si l’on applique une étiquette lisse sue une surface comportant des aspérités, elles apparaîtront sur l’étiquette.
Ces textures secondaires peuvent être créées directement grâce à des logiciels de dessin 3D ou en les plaçant directement à l’endroit voulu sur l’objet comme pour les textures primaires. Il faut noter que le dessin direct sur une surface 3D N’est pas très pratique et est assez lent. En effet, pour voir ce que l’on dessine, il faut un rendu et temps réel, ce qui nécessite une puissance importante au niveau de la plate-forme de travail.

Les textures ont été appliquées au squelette du billard
Une fois les textures appliquées, il reste encore quelques finitions à faire. ( voir page rendu )
- par Benjamin H.
|