L'UV Mapping dans Blender
L'UV Mapping dans Blender
Niveau :
Nous allons dans ce tutoriel aborder les notions d'UV-Mapping, qui sont incontournables dès lors qu'on veut un peu maîtriser ses textures. Notez que la version de Blender utilisée ici est la 2.46, ce qui est important car le module d'UV-Mapping a été réaménagé à partir de cette version.
L'UV-Mapping est une méthode de projection de textures bien particulière. Elle permet d'associer de manière très précise une texture à un maillage, en précisant comment le maillage se déplie.
Prenons un exemple parlant : un cube. Et bien un cube déplié, c'est à dire aplati, ça donne ceci :
Grâce à ce dépliage de mon cube, je vais pouvoir maîtriser face par face ce qui apparaît dessus.
J'espère que l'exemple est vraiment parlant et vous aura aidé à comprendre ce qui vous attend.
Le dépliage d'un objet consiste à étaler ses faces, de sorte que chacune corresponde à une partie de la texture image.
Pour commencer je vous demanderai de télécharger le Fichier Blend de départ contenant le modèle que nous allons UV-Mapper.
Pour déplier correctement un objet, nous avons besoin d'indiquer où seront les traits de coupe. En langage Blender, ces traits de coupe sont les seams (littéralement coutures en français). En effet il faut essayer d'imaginer la texture comme un vêtement qu'on veut poser sur un personnage, et le tissu étant plat d'origine, il faut indiquer où coudre pour qu'il s'adapte plus ou moins naturellement au volume.
On indique les seams dans l'Edit Mode (touche TAB). Pour ce faire il faut sélectionner les arêtes qui représentent les traits de coupe, puis CTRL + E et valider avec Mark Seam (ici sur la base de l'"aile" gauche, faites ensuite celle de droite) :
Vous l'aurez compris, l'option Clear Seam permet au contraire, de supprimer la couture à l'endroit sélectionné.
Continuez la découpe en marquant comme seam la base de l'aileron gauche comme ceci (puis faites la même chose pour le droit) :
Puis séparez projection du haut et projection du bas en marquant une séparation comme ceci :
Puis la base du moteur comme ceci :
Maintenant séparons l'arrière de l'engin du reste :
Enfin, sélectionnez la face supérieure de l'"aile" gauche (puis faites la même chose pour la droite) :
Préparons ensuite le plan de travail en séparant la vue principale en deux comme l'image qui suit. Clic Droit sur la séparation rouge sur l'image, Split Area, déplacer le curseur au milieu de l'espace, puis Clic Gauche pour valider. Ensuite pour la zone de gauche, cliquer sur l'icône de sélecteur de fenêtre (bleuté sur l'image, au bout de la flèche bleue) et sélectionner UV/Image Editor.
Toujours en Edit Mode, dans la vue du modèle 3D donc, sélectionnez toutes les faces de notre objet avec la touche A. Appuyez ensuite sur la touche U puis validez par Unwrap (qui signifie Déplier). Vous devriez voir apparaître dans la fenêtre UV (celle de gauche en l'occurrence) le résultat de notre dépliage comme ceci :
Si à cette étape vous n'obtenez pas le résultat escompté, je vous conseille de reprendre le dépliage. Si vous êtes vraiment bloqué à cause de la complexité du modèle à déplier, je vous propose de télécharger ce modèle pré-déplié qui vous permettra de poursuivre le tutoriel malgré tout.
Vérifions maintenant la bonne tenue de notre dépliage, afin de voir si des faces ne sont pas excessivement déformées, étirées, etc. Pour cela, dans la fenêtre UV, cliquez sur Image puis New. De là, enfoncez le bouton UV Test Grid, puis validez avec Ok. Blender génère alors une image de 1024x1024 pixels qui servira de testeur. Dans la vue 3D, passez en vue mode texturé ALT + Z.
Effectivement, le dépliage comporte quelques erreurs.
Sous le vaisseau, les entrées d'air ventrales sont transparentes. Cela signifie que leurs normales ne sont pas dans le bon sens. Pour cela, sélectionnez les faces fautives, et dans le panneau d'édition (F9), cliquez sur Flip Normals.
De plus, comme vous pouvez le voir sur l'image suivante, certaines surfaces sont exagérément étirées :
Nous allons corriger cela en modifiant directement le dépliage dans la fenêtre UV. Pour régler le problème, il "suffit" d'agrandir la zone réservée à cette face. Sélectionnez donc les points des faces à modifier dans la fenêtre UV, puis déplacez les ou agrandissez les à volonté. Les commandes sont les mêmes que pour l'Edit Mode, à savoir G pour déplacer, S pour mettre à l'échelle, R pour faire tourner, la sélection s'opérant toujours avec le Clic Droit, et le maintien avec Shift pour une sélection multiple.
Pour corriger le dépliage au niveau des ailes, j'ai modifié ces faces comme ceci (on peut sans doute faire mieux que cela, mais ça ira pour cette fois-ci) :
Pour corriger le dépliage au niveau du haut du moteur, j'ai simplement agrandi les faces de cette manière :
Notre modèle plus ou moins corrigé, nous allons pouvoir attaquer l'export de la Map. Pour cela dans la fenêtre UV, cliquez sur UV / Scripts / Save UV Face Layout.
Dans le menu d'export qui nous est offert, laissez tout par défaut, sauf la résolution de l'image à exporter. Pour ce tutoriel j'ai choisi 1024x1024, mais on peut volontiers monter en résolution. Validez et enregistrez l'image TGA de la map où bon vous semble sur votre ordinateur.
Ouvrez l'image TGA précédemment enregistrée avec votre éditeur d'image préféré. Pour ce tutoriel j'utiliserai The GIMP, qui est excellent, gratuit et open source.
Vous voici donc avec votre image ouverte. Allez donc chercher quelques textures qui vous plaisent (je vous conseille www.cgtextures.com pour cela) et enregistrez-les. Faites un glisser-déposer des deux fichiers image sur notre fichier texture, ceci afin de mettre chaque nouvelle image comme nouveau calque. Mettez les calques de matière en fusion Multiplier, et n'activez qu'un seul calque à la fois. De cette manière, vous devriez voir apparaître sans mal les limites de notre Map exportée.
CLIQUEZ SUR L'IMAGE POUR VOIR EN GRAND
Pour maîtriser la façon dont les deux textures de mon exemple se marient l'une à l'autre, Clic Droit sur un des calques de matière, puis Ajouter un masque de calque. Sélectionnez Blanc (opacité complète) par défaut. Prenez un très large pinceau, doux de préférence, avec comme couleurs Noir et Blanc dans la palette. Peindre en Noir effacera la texture, alors que peindre en Blanc la fera réapparaître à l'envi. Attention à bien modifier le masque de calque, et pas le calque d'image lui-même : le masque de calque est affiché à droite du calque associé.
CLIQUEZ SUR L'IMAGE POUR VOIR EN GRAND
Avant d'exporter notre texture, veillez bien à désactiver le calque du dessous qui contient les traits des contours.
Enregistrez l'image sous, en JPG, bonne qualité de préférence. Ceci fait vous pouvez fermer The GIMP.
CLIQUEZ SUR L'IMAGE POUR VOIR EN GRAND
Oui ma texture n'a rien d'exceptionnel, ça a vraiment été fait en cinq minutes, mais je pense que c'est nécessaire afin que vous compreniez le principe. Prenez vraiment le temps de vous attarder là-dessus, de bonnes textures donnent souvent de bons résultats.
Nous voici de retour dans Blender. En Edit Mode, sélectionnez toutes les faces si ce n'est pas déjà fait. Dans l'éditeur UV, cliquez sur Image / Open, puis allez chercher votre fichier de texture créé avec votre logiciel de retouche. A partir de là, les faces se verront associées votre texture.
Pour qu'une texture UV soit affichée au rendu, il faut cocher la propriété TexFace du panneau des matériaux :
A l'étape précédente, j'ai écrit qu'il fallait cliquer sur TexFace pour que la texture s'affiche au rendu. C'est tout à fait exact, mais il existe une méthode moins limitée qui permet aussi d'enchaîner les couches tout en utilisant le dépliage UV.
N'importe quelle texture, même procédurale, peut utiliser les coordonnées UV. Pour ce faire, dans le panneau des matériaux, il faut cocher le paramètre UV de l'onglet Map Input :
Ce qui veut dire que vous pouvez utiliser les dix slots de textures pour combiner vos effets (bump map canal Nor, spec map canal Spec, etc.) tout en utilisant les coordonnées UV d'origine.
J'ai fait trois textures de meilleure qualité, avec passe couleur, bump mapping, et enfin spéculaire comme ceci :
Vous pouvez télécharger la passe couleur, la passe bump mapping, et enfin la passe spéculaire qui m'ont servi à faire ce rendu, ainsi que le fichier .blend final :
Ceci n'est pas obligatoire, loin de là, mais sachez que vous avez la possibilité de peindre sur une texture directement dans l'interface de Blender. Tout se passe dans la fenêtre d'UV-Mapping. Il vous suffit d'aller dans le menu View / Paint Tool, et à partir de là vous disposez de tous les outils nécessaires à la modification de l'image. N'oubliez pas d'autoriser les modifications de la texture avec le bouton désigné par la flèche rouge sur l'image suivante :
Ca y est, le tutoriel est terminé, normalement vous savez UV-mapper maintenant !
Une fois comprise, la technique mérite d'être travaillée, et ce n'est pas forcément simple au début.
tutoriel rédigé pour le Blender Clan par ebrain, le 31 mars 2008
Auteur | Conversation | ||
T_i_t_i
![]() ![]() Inscrit le: 20/12/2009 De: Envois: 383 |
bon tuto, merci ebrain |
||
RichDeg
![]() ![]() Inscrit le: 4/7/2010 De: Lens Envois: 81 |
Vraiment un excellent tutoriel ! |
||
lapineige
![]() ![]() Inscrit le: 16/1/2011 De: Le plus grand terrier du monde ! Et le plus high-tech. Envois: 4082 |
exellent tuto je te remercie |
||
shadowtief
![]() ![]() Inscrit le: 30/1/2011 De: Envois: 17 |
très bon tuto, j'ai une question,tu les a trouver tes images qui ont servies pour la couleur, nor,spe ?? |
||
Malik-Jackson
![]() ![]() Inscrit le: 12/10/2010 De: Envois: 24 |
Merci pour le tuto, e-brain! |
||
Redmask
![]() ![]() Inscrit le: 11/4/2011 De: Envois: 48 |
Chez moi ,sur la 2.59, ça ne s'affiche pas au rendu et je n'arrive pas à trouver le bouton TexFace |
||
Ablanore
![]() ![]() Inscrit le: 5/9/2011 De: Envois: 6 |
J'ai aussi la 2.59 et j'ai le même résutlat, aucun affichage ne se fait lorsque je tape sur U. |
||
marata
![]() ![]() Inscrit le: 26/11/2011 De: Envois: 35 |
Je suis daccord bon tuto mais j'ai eu l'oeil pour remarquer un petit détail génant faisans que le 3 et le 4 était cote a cote or cela est impossible car sinon le somme des faces opposer ne sera pas de 7. |
||