Masque de V – ZBrush Projection

Dans ce tutorial, outre la création de ce masque de V, en référence à Guy Fawkes devenu culte grâce à « V pour Vendetta », je vais vous démontrer la puissance de la fonction Projection de Zbrush.

Ce tutoriel se concentrera sur les parties techniques, et non sur les parties artistiques.
Pour commencer, je ne saurais trop vous recommander d’avoir des images de référence sous les yeux. Ça tombe bien, Internet en regorge. Faites votre sélection, puis lancez ZBrush (minimum version 4, pour bénéficier de Spotlight, sans qui les premières indications seraient inutiles).
Tout d’abord, importer l’image. C’est dans le menu Texture, et sur le bouton Import.

Texture_Menu_Import

Après avoir sélectionné ladite texture dans cette palette,

Texture_AddToSpotlight

cliquez sur le bouton Add to Spotlight. Immédiatement après, elle s’affiche dans votre espace de travail, en même temps que la barre Spotlight s’ouvre.

Recommencez l’opération autant de fois que vous aurez d’images.
Maintenant vous pouvez refermer le panneau Spotlight, qui fait irruption à chaque ajout de texture dans Spotlight… Touche « virgule ».

2014-02-17 10_30_49-ZBrush

Utilisez ensuite la palette circulaire de Spotlight pour déplacer/mettre à l’échelle les images.
Pour alléger ce tutorial, je vous renvoie vers la documentation de cet outil.

http://docs.pixologic.com/reference-guide/texture/spotlight/

Ce qui est important que je signale, c’est que par défaut, tant que les images seront affichées, et donc tant que Spotlight sera actif, vous ne pourrez pas utiliser des brosses de sculpture, mais seulement « Move ». Il faudra désactiver Spotlight (touche SHIFT + Z) pour retrouver l’usage de nos brosses… Pas évident, sauf qu’il existe heureusement une option bien cachée pour défaire ce nœud !
Il faut aller dans le menu Brush, et descendre jusqu’à Samples, déplier cette sous-palette, et désactiver le gros bouton « Spotlight Projection« . Voilà, c’est fait !

BrushPalette_SpotlightProjection

Par contre, ça désactive la projection d’une image depuis Spotlight sur notre objet. Quand viendra le besoin de projeter une texture, vous saurez où revenir pour activer ce comportement.

Bien, alors que maintenant l’on va pouvoir commencer à créer un objet de base, quelques questions méritent d’être posées, car ce masque présente deux défis de modélisation dans Zbrush :

  • c’est un objet peu épais, ce qui implique une plus grande prudence dans les coups de brosse, pour ne pas détériorer la face opposée du masque (AutoMaskBackFace pourra nous sauver la mise)
  • il est troué à plusieurs endroits, ce qui, ajouté au point précédent, rend la tâche encore plus délicate…

Le projet s’annonce comme quasi-chirurgical. Heureusement, grâce une inventivité insoupçonnée de ZBrush, cette tâche ardue va pouvoir être réglée avec aisance !

Première chose réconfortante, c’est de de dire : commencez au plus simple.
Partant donc d’une simple sphère, j’ai modélisé un visage, sans me soucier de l’épaisseur.
En cours de route, j’ai eu besoin de faire un coup de Dynamesh, pour équilibrer la disposition des polygones, et pouvoir monter en résolution.

GuyFawkes_Mask_Lineup

Pensez à sauvegarder, en faisant des copies !
Quand la modélisation fut achevée (env. 1h30 plus tard), j’ai pu entamer le polypainting.

VMask_Polypainting

VMask_Polypainting_Finish
Comme les couleurs sont très simples sur ce masque, je n’ai pas eu besoin de la projection de Spotlight, seulement de récupérer la couleur sur les textures elles-mêmes puis de peindre avec les brosses de ZBrush. Pour capturer la couleur qui se trouve sous votre pointeur, appuyez sur la touche « C« .

Au besoin, créez un Layer qui contiendra les informations de Polypainting.

Voilà, si l’on estime que la partie créative est terminée, on va pouvoir entamer le travail de projection, et dans le cœur de ce tutoriel.

Voici le plan d’action : nous avons un modèle sculpté et peint, qui pèse quelques millions de polygones, dans une topologie, disons-le, dégueulasse, et qu’on voudrait exploitable pour un moteur de jeu (dans mon cas).

Déjà, première recommandation, travailler sur un duplicata de cet objet. Car en plus de préserver le fruit de nos efforts, le fait de faire une projection entre deux objets distincts fonctionne mieux que de remplacer l’objet de base et de laisser Zbrush gérer les conséquences…

Ou alors, c’est comme vous préférez, ignorez le paragraphe précédent, et au lieu de faire la duplication de l’objet original, on procèdera à une extraction, qui créera une copie, en plus de ne garder que la partie sélectionnée.

Pour cela, on dessine un masque sur la face, et qui corresponde à peu près à quoi devrait ressembler le masque au final.

VMask_Masking_wip VMask_Masking_full

Puis on peut augmenter le contraste du masque, en maintenant CTRL + ALT, et en faisant un clic sur le masque. Quelques clics plus tard, on obtient un masque aux contours bien plus nets.

VMask_Masking_Contrast

Enfin, on se rend dans l’onglet Extract de la palette Tool, et dans la sous-palette Subtool, et après avoir désactivé la fonction « Double » et « TBorder« , et laissé le paramètre « Thick » à zéro (comme indiqué sur la capture d’écran),

2014-02-17 14_11_50-ZBrush

on clique sur le gros bouton Extract, ce qui donne d’abord une prévisualisation, et ensuite, on valide avec le petit bouton Accept. Attention, si vous tournez la vue, la prévisualisation sera perdue, et il faudra à nouveau cliquer sur Extract pour la faire revenir. Nous voici avec une simple épaisseur de polygones.
Ensuite, de ce double, on va pouvoir en faire une copie low-poly, ou du moins qui constituera le maillage de base.

VMask_Extracted

Le plus rapide est de faire une première conversion grâce à ZRemesher, qui va nous faire le plus gros du travail de retopo. Ne parlons pas encore des yeux, ou des autres orifices, ça sera en dehors de ZBrush.
Vous pouvez vous aider de la brosse ZRemesher Guides (B + Z + R) pour tracer les grandes lignes du visage, et ainsi orienter le flux des polygones.

VMask_ZRemesher_Guides

La densité suffisante pour cette retopo est de moins de 500 polygones. À partir du millier de polygones, je trouve que c’est trop riche en détail, donc moins pratique pour retoucher la topologie dans un autre soft de 3D.

Vmask_Zremeshed_1k2014-02-17 14_19_32-ZBrush

Vmask_Zremeshed_0.45k2014-02-17 14_22_35-ZBrush

Bien, une fois que cette version de base est prête, il serait bon de lui appliquer une projection par rapport au modèle original, afin d’être sûr de sa conformité avec ce dernier.
Pour cela, ça se passe dans la sous-palette Subtools.
Attention, l’ordre des objets est important : Zbrush considère que la référence se situe toujours au-dessus de l’objet sur lequel on va appliquer la projection.

Subtool_Projection_List

On peut aussi exclure des objets de cette procédure en désactivant leur visibilité (symbole d’œil).
Pour les paramètres de projection, c’est dans l’onglet homonyme, dans le bas de Subtools.

Maintenant vient une information essentielle à cette technique de projection : le Projection Shell. En faisant varier l’intensité de ce paramètre, on peut remarquer que notre maillage se dilate.

Pas de panique, c’est seulement temporaire.
Mais il nous indique jusqu’à quelle distance ZBrush va devoir aller inspecter l’espace environnant pour chaque point, pour le faire correspondre avec un point homologue du maillage de référence.
Vous n’avez pas compris ? Pour faire simple, il faut et il suffit que le maillage du Projection Shell englobe complètement le maillage de référence, et donc ne doit laisser aucune zone apparente.

Voyez sur les images le premier, qui n’est pas bon, et le deuxième, qui l’est.

ProjectionShell_001ProjectionShell_002

Une fois que l’on relâche le clic de souris, le Projection Shell disparaît, et l’on retrouve la forme antérieure de notre maillage retopologisé.

Un clic sur le bouton Project, et ZBrush nous ouvre une fenêtre, demandant si l’on souhaite projeter aussi les données de Polypaint ! Vraiment sympa, mais pas utile pour l’instant. On se contentera donc de la géométrie.

Alert_Projection_Polypaint

Une fois fait, on peut exporter en .OBJ notre objet low-poly vers notre logiciel de modelisation préféré. Je parle d’expérience, car je me suis cassé le nez à essayer de le faire dans ZBrush, car ce n’est pas aussi évident, ni prédictible en matière de quantité de polygones.

Exportez aussi une copie de votre modèle sculpté, juste à niveau de détail suffisant pour que l’on puisse bien tracer le contour des yeux.
On va temporairement quitter ZBrush, pour faire un vrai maillage de base bien propre.
L’opération marche aussi bien avec 3ds Max que Maya ou bien Modo, (pour ne citer que les plus populaires).
C’est justement à cette occasion qu’il s’agira de créer les orifices pour les yeux, les narines et la bouche. Le maillage high poly ne servira quant à lui que de référence pour pour assurer que les contours de votre maillage low poly correspondent bien avec le premier.

Mais attention, pas question pour l’instant de créer la face interne du masque.

Gardons juste la façade. Ne pas oublier non plus de déplier les UV, on en aura besoin.

VMask_Good_Modeling

Maintenant, retour dans ZBrush, et on importe notre OBJ fraichement modifié, en lieu de notre objet « ZRemesh ».

Maintenant, une autre question cruciale me traversait l’esprit au moment où j’expérimentais cette méthode, c’était de savoir si ZBrush allait bien accepter de faire une projection sur un élément troué ! Et bien oui ! Non seulement il n’a pas besoin d’être fermé, mais il peut être fait de plusieurs morceaux !

Pour bien faire, appliquez-lui un coup de Projection, pour caler votre nouvelle géométrie sur l’ancienne. Cette fois, on pourra lui projeter la couleur, bien que le résultat soit très grossier.

Je voudrai aussi développer un autre point, qui puisse vous servir plus tard sur d’autres projets, et vous éviter de lutter contre le logiciel : il faut savoir que, de base, ZBrush permet de remplacer un objet par un autre, même si les topologies sont différentes.
Pour cela, il faut se rendre au niveau de subdivision 1 de l’objet ou du subtool, et d’importer un fichier OBJ.
Une fois fait, ZBrush va automatiquement projeter sur cette géométrie de bas niveau tous les étages successifs.

Le problème, et qui se produit 7 fois sur 10, c’est que si la forme de votre nouvelle géométrie diffère un peu trop de votre géométrie d’origine, ZBrush va « perdre » la correspondance à cet endroit, c’est pourquoi on obtient des plaques vierges, où aucun détail ne sera projeté, et ces détails-là sont perdus…

Projection_w_Replacement

Vous pouvez toujours annuler cette opération, et modifier votre maillage low poly, mais vous travaillez à l’aveuglette, car en dehors de Zbrush, et à chaque import, vous vous demandez sur quel endroit ça va merder, passez-moi l’expression.

J’étofferai mon propos de la métaphore suivante :
imaginons que notre objet sculpté, avec ses niveaux de subdivisions, soit un bâtiment à étages.
Si on s’attaque aux fondations alors que le bâtiment est debout, il y a de grandes chances que ce qui se trouvait auparavant soutenu désormais s’effondre, si les fondations diffèrent.
Or, avec un objet distinct, on va littéralement faire un moulage de votre bâtiment existant, donc aucune détérioration.
On laisse les défauts derrière, pour ne garder que la nouvelle structure !

2014-01-12 13_48_09-ZBrush

Pensez un instant aux efforts que vous pouvez économiser avec un maillage qui serait passé par Dynamesh…

En gardant le maillage d’origine, et en le re-projetant sur notre nouveau maillage propre, successivement à chaque étape de subdivision, on récupèrera tous nos détails, ainsi que la couleur d’origine, sur notre nouvelle géométrie ! Et si quelque chose ne tournait pas bien, aucun souci, le processus n’est pas destructif pour le modèle de référence.

En quelques étapes, voici la procédure qui vous permettra de reconstruire votre masque sur votre nouvelle géométrie :

  • faire correspondre les niveaux de subdivision entre objet : pour commencer, il faut donc projeter le nouveau maillage sur le niveau 1 de la sculpture originale ;
  • enregistrez une MorphTarget de votre nouvel objet ;
  • appliquer la projection ;
  • subdiviser le nouvel objet ;
  • monter d’un cran dans les niveaux de subdivision de l’objet original ;
  • appliquer la projection ;
  • continuer jusqu’à atteindre le niveau de subdivision maximal de l’objet original, puis subdiviser encore une fois le nouvel objet, et appliquer à nouveau la projection.

Pourquoi ? Parce qu’avec le nouvel objet, on démarre avec beaucoup moins de polygones que l’objet référence, donc à niveau de subdivision égal, le nombre de polygones n’est pas égal, et il faut donc compenser cet écart.
La peinture doit suivre également.

Maintenant, on va être en mesure d’exporter une normal map à partir du nouvel objet, ainsi qu’une map de couleur (la map de spécularité n’est pas indispensable, vu que dans le film, le masque est brillant partout).

GuyFawkesDiffuse GuyFawkesNM

Replacez-vous au niveau de subdivision 1, et dans le menu des MorphTarget, cliquez sur Switch. Cette MorphTarget ne servira que pour les export de textures.

Voici donc les textures qui iront sur votre géométrie low poly, géométrie que vous pourrez enfin extruder, pour donner de l’épaisseur.

Guy_Fawkes_Creation_09Guy_Fawkes_Creation_08

En conclusion, la fonction Projection est une véritable bouée de sauvetage, et permet de franchir la barrière de la topologie, sans avoir besoin de baker les textures au préalable.
En outre, le but était de montrer que la Projection fonctionnait aussi sur des géométries non fermées.
En espérant que ceci vous ait donné foi en ZBrush !

This is a unique website which will require a more modern browser to work!

Please upgrade today!