Bonjour et bienvenue…

Si vous voulez réaliser des prims sculptés pour Second Life, vous devez d’abord connaître les principes de base.
Que vous soyez novice ou expert en modélisation 3D, vous devez avoir en tête que:

  1. Les sculpties doivent être faits à partir d’un mesh très spécial et non modifiable!
  2. Les sculpties doivent être représentés par une UV-map très spéciale et non modifiable!
  3. Les sculpties ne peuvent avoir plus de 1024 faces.

J’ai déjà fait quelques tutoriels vidéo s’adressant spécialement aux débutants. Environ 105 minutes de vidéos en 5 tutoriels
couvrant beaucoup de connaissances informelles. Suffisamment pour que vous puissiez commencer en un ou deux week-end.
Prenez votre temps pour les regarder, vous ne le regretterez pas!!. Vous trouverez les liens dans la colonne de gauche de cette page.

“Les Bases du Sculpty”

Transcription

Vous avez travaillé sur les prims sculptés pendant un moment mais vous ne savez
toujours pas pourquoi vos méthodes fonctionnent certaines fois et d’autres non?
Vous vous demandez ce qui va et ce qui ne va pas là-dedans?
Dans ce tutoriel, je vais vous montrer les coulisses et vous expliquer ce qu’est
réellement une sculpt-map, comment cela fonctionne en détail et
ce que vous pouvez faire et ne pas faire avec.

Laissez-moi vous montrer le plus simple des prims sculptés, une simple surface plane.
Cette surface possède 2 dimensions que nous appelons X et Y. Cette surface est faite
de faces rectangulaires. On appelle aussi ces faces des quads.

Cette surface particulière est faite de 32 faces selon l’axe X et 32 faces selon l’axe Y.
Nous avons donc pour cette surface 32 fois 32 soit 1024 faces.

Une inspection de plus près montre que chaque face est faite de 4 vertices et de 4 côtés.
Deux faces adjacentes partagent donc un côté et deux vertices. Cet arrangement spécial
est le maillage plus simple et le plus régulier définissant une surface.

En fait, cette topologie est utilisée par tous les prims sculptés du monde. Et puisque
la topologie d’un maillage est prédéfinie, nous avons seulement besoin de spécifier
une liste de points identifiés dans l’espace 3D. Et comme le mesh est strictement
rectangulaire, nous pouvons utiliser les lignes et les colonnes de vertices comme
indexes de liste. Nous parlerons des implications que cela amène dans quelques instants.

Par exemple, le point en bas à gauche a pour coordonnées [0, 0]. Cela signifie
qu’il est situé sur la première ligne et première colonne en comptant de gauche
à droite et de bas en haut.

Cette identification est universelle. Cela veut dire que tant que vous laissez la topologie
du maillage intacte, vous pouvez réarranger les vertices autant que vous voulez et vous
pouvez courber ou étirer le maillage dans les 3 dimensions. Tant que les edges¹ ne sont
pas changées et tant que vous n’ajoutez ou ne supprimez pas de vertices, l’objet sera
toujours converti en sculpty.

En d’autres termes:
le vertice tout en bas à gauche de la surface originale sera toujours le vertice
numéro [0,0], même s’il a été déplacé en haut à droite de l’objet. Cela fonctionne
tant que les edges¹ ne sont pas supprimées.

En un mot:
quand vous coupez ou réarrangez les edges¹, l’objet n’est plus un sculpty!

Ok, nous venons d’apprendre que chaque maillage est un ensemble de faces
adjacentes arrangées en lignes et colonnes. Et nous avons vu que sa topologie
est universelle. Un sculpty contient par défaut 32 rangées de 32 faces. La façon
dont le maillage est construit est définie et enregistrée dans une carte séparée.

Il y a une correspondance vertice par vertice immuable entre la carte et le maillage.
Par convention, l’axe horizontal de la carte est l’axe “U” et l’axe vertical est l’axe “V“.
D’où le nom “UV-Map“.

Alors que vous pouvez modifier la position d’un vertice de l’objet, l’UV-Map
ne change pas. Et chaque vertice du maillage peut être vu sur la l’UV-Map.

Créons maintenant un simple cylindre en courbant le plan à 360°.

Ceci est intéressant: quand on courbe le plan, ses bords se rejoignent.
Autrement dit: quelques vertices partagent exactement la même position.
Nous venons de créer notre premier raccord.

Jetons un coup d’œil à l’UV-Map: nous voyons en effet la colonne de vertices
de gauche correspondre avec celle de droite. Nous pouvons maintenant raccorder
les bords du plan. C’est fait en principe en fusionnant les vertices de l’extrémité
de gauche avec ceux de l’extrémité de droite de l’UV-Map.

En fait, la suppression de vertices ne change pas l’UV-Map de façon significative.
Nous avons seulement forcé le modèle à utiliser les mêmes coordonnées pour
les vertices de la colonne de gauche et ceux de la colonne de droite.
Ça s’appelle un raccord en cylindre.

Maintenant, quand on sélecte un vertice de ce raccord, nous sélectionnons en fait
deux points sur la map. En fait , la représentation colorimétrique (la sculptmap, voir plus bas)
de cet objet ne change pas après avoir effectué le raccord.

Cependant, quand on transfert le maillage dans Second Life, nous avons l’option
de choisir le type de raccord en cylindre selon la topologie.

Continuons avec notre cylindre et courbons de façon à obtenir un tore comme
je vous le montre ici… Comme attendu, les lignes du haut et du bas correspondent
sur le model et peuvent  fusionnées comme nous l’avons fait pour le cylindre il y a un instant.

Le tore est maintenant prêt à l’emploi. Et nous devrons penser à définir le type de raccord
“Tore” après l’import dans Second Life.

Retournons à notre cylindre et fermons ses extrémités en réunissant la ligne de vertices
du haut et du bas aux pôles du cylindre. Déformons-le afin d’obtenir une forme sphérique
et nous venons de créer une sphère sculptée.

Jusqu’à présent, j’ai introduit les bases des prims sculptés.
En partant d’une simple surface je vous ai montré:

  • comment on peut en faire un cylindre, un tore ou une sphère.
  • que la cartographie d’un maillage appelé UV-Map reste la même pour tous les sculpties,
    quelque soit leur forme.

Vous vous demandez certainement:
“Comment l’UV-Map peut-elle la même et contenir les données du maillage de mon sculpty?
Le maillage est pourtant bien différent d’un objet à l’autre. Comment est-ce que je peux trouver
sur l’UV-Map les informations sur la position des faces de l’objet?”

La réponse est simple: l’UV-Map ne contient pas cette information. Les données sont imprimées
sur un autre support appelé sculpt-map. Il s’agit simplement d’une image en deux dimensions.

Quand on regarde de plus près notre UV-Map, nous voyons en effet qu’elle est associée à une image.
Pour le moment, cette image est noire. Nous allons enregistrer la position de chaque vertice
du maillage sur chaque pixel de la sculptmap correspondant.

La cartographie des vertices du maillage sur la sculptmap est définie par l’UV-Map.
Nous pouvons créer dans Blender la sculptmap grâce au moteur de rendu Primstar
qui génère les données des pixels pour nous.

J’expliquerais dans le prochain tutoriel comment la position d’un vertices est traduit en couleur.
Pour le moment, nous avons seulement besoin de nous souvenir que la position de chaque vertice
est enregistrée dans un pixel de l’image.

Voyons maintenant la taille de l’image. Elle fait 64 pixels en x et 64 pixels en y. Pourquoi?
Nous ne devrions avoir besoin que de 33×33 pixels pour enregistrer les données.
Donc en principe, il suffirait de créer une image de cette taille.

Mais la hauteur ou la largeur de n’importe quelle sculpt map doit être un multiple
de puissance de 2. Nous ne pouvons utiliser que 8, 16, 32, 64, 128, 256 ou 512 pixels par côté.
Tout autre taille sera arrondie à la plus proche puissance de 2.

La plus petite image qui puisse contenir les données mesure donc 64×64 pixels.
Cela implique que nous n’utilisons seulement 1089 des 4096 pixels disponibles sur notre sculpt map.

Les pixels importants sont clairement définis. Ils sont situés toutes les deux lignes et
toutes les deux colonnes en partant du coin inférieur gauche.

Les pixels que j’ai coloré en noir ne sont pas utilisés pour cette carte.
Vous pouvez voir que seulement 1 des 4 pixels est vraiment utilisé.
Tout le reste de la map est de l’espace inutile.

Notez que ce motif est interrompu en haut et à gauche de l’image.
C’est là où sont situés la 33éme ligne et la 33ème colonne.
Souvenez-vous bien que le nombre de vertices doit être constant et ne doit pas être changé.

De ce fait, une sculpt map de 64×64 pixels enregistre exactement 1089 vertices,
ce qui correspond à 1024 faces. Et chaque carte fournira les données des vertices par ces pixels marqués.
Bien que cette carte puisse contenir 3007 positions de vertice dans les parties noires de la carte,
cela ne fonctionnera pas puisque les pixels en noir ne sont jamais utilisés.

Les sculpties ne sont pas limités à des objets et des UV-Maps carrés.Vous pouvez utiliser
n’importe quelle combinaison de valeur de puissance de 2 pour les axes U et V tant que
le nombre de faces en U x le nombre de faces en V <= 1024.

Vous ne pouvez pas avoir non plus moins de 4 faces pour chaque côté du maillage.
Vous pouvez calculer les dimensions d’une sculpt map en faisant le produit des faces en hauteur et en largeur fois 4:
Nombre de pixels = UFaces * VFaces * 4
Ce n’est pas toujours vrai mais cela fonctionne pour la plupart des ratios.

Vous pouvez avoir des maillages de ratios extrème de 4 * 256 faces.
Et la plus petite sculpt map mesure 4 * 4 faces. De ce que nous venons de dire il y a une minute,
nous déduisons que la sculpt map de cet objet mesure 8 * 8 pixels.
C’est un sculpty valide et qui pourra être importé dans Second Life sans problème  avec une version du Viewer 2.

J’en ai terminé avec ce tutoriel.

  • Nous avons introduit les notions d’UV-Map et de Sculpt-Map
  • et la manière dont ces cartes sont liées aux maillage et aux sculpties.

Nous continuerons la prochaine fois avec un exemple concret et nous verrons comment
nous pourrons appliquer les principes des prims sculptés.

A bientôt!

Autres sources d’information:
Voici 3 excellents groupes de discussion sur Blender dans Second Life:

  • Blender Jass/Primstar (notre groupe officiel. Beaucoup de bons sculpteurs réactifs)
  • Blender Users
  • Blender

Je suis dans chacun d’entre eux!
Tous mes meilleurs souhaits! Gaia

¹Notes de traduction: une “edge” est la droite entre deux vertices. Une traduction possible serait “arête” ou “bord” mais serait ambiguë dans le contexte présent.