Aller au contenu

« Terrain en mesh et height map » et « Modéliser un terrain en 37 Textures pour OpenSim » : différence entre les pages

De OSWiki
(Différence entre les pages)
 
 
Ligne 1 : Ligne 1 :
= Créer un terrain en [[Lexique_des_réunions#Mesh|mesh]] dans Blender 3D =
= Modélisation du terrain dans [https://www.blender.org/ Blender 3D] =
== Méthode manuelle ==
<br>
Attention, cette modélisation est très sommaire. Vous pourrez découper votre terrain en autant de morceaux que vous le désirez. Plus ces morceaux seront nombreux, plus vous pourrez améliorer la définition des textures.
<big><big>Tout au long du tutoriel, dans Blender 3D,
=== Préparer le plan ===
* ne pas oublier de placer le pointeur de la souris dans l'éditeur concerné par les commandes envoyées par une ou plusieurs touches du clavier ou par des boutons de la souris.
*[https://peertube.stream/w/jw4pRZy7h8xE7sim9FCJsH Lien vers la vidéo.]
* sauvegarder souvent le fichier blender.</big></big>
<peertube>https://peertube.stream/w/jw4pRZy7h8xE7sim9FCJsH</peertube>
<br>
<ol>
== Utiliser l'add-on A.N.T.Landscape ==
<li>'''Supprimer le cube''' : sélection clic gauche, suppr.</li>
=== Add-on A.N.T.Landscape ===
<li>'''Ajouter un plan''' : Add/Mesh/Plane</li>
* Suivre [[Terrain_en_mesh_et_height_map#Utiliser_l'add-on_A.N.T.Landscape_dans_Blender3D |le tutoriel '''Utiliser l'add-on A.N.T.Landscape dans Blender3D''']].
<li>'''Positionner la caméra''' : Vue du dessus (pavé numérique 7), zoomez avec la molette. </li>
<li>'''Marquer les coutures pour 4 parties''' :  Passez en mode Edit . Subdivisez une fois : clic droit , subdivide. Sélectionnez les deux lignes intérieures qui se croisent. Edge/Mark seam </li>
<li>'''Générer les UVMap''' : Passez en sélection par face, dans l'espace de travail "UV Editing". Une face après l'autre (donc 4 fois), sélectionner un des 4 carrés, UV / Unwrape Angle Based. L'UVMap du carré doit prendre toute la surface disponible. </li>
<li>'''Subdiviser le plan''': Repassez dans l'espace de travail "Modeling". Sélectionnez l'ensemble du mesh (A). Clic droit / Subdivide. En bas à droite dépliez le menu déroulant "subdivide" qui s'est affiché. Dans "Number of Cutes" indiquez 100. </li>
</ol>


=== Modéliser le terrain ===
=== Options de l'add-on ===
{|
|<peertube>https://peertube.stream/w/k5qKGDYNA24kzvtaPHSRS6</peertube>
|style='padding-left:40px'|<ol>
<li>'''Les montagnes''' : Rester en mode Edit, sélection par points. Activer le "Proportional Editing"(icône : cercle avec un point) en haut de la fenêtre. Sélectionner des points pour  les déplacer sur l'axe des Z (G + Z). Pour modifier la taille de l'influence du Proportional Editing, utiliser la molette de la souris.</li>
<li>'''Étendues d'eau''' : Même chose que pour les montagnes, déplacez les points vers le bas.</li>
<li>'''Cours d'eau''' : sélectionnez une suite de points sur le maillage, un par un (ce qui peut être fastidieux) ou en sélectionnant le point de départ puis le point d'arrivée en  pressant sur la touche CTRL. Tirer l'ensemble des points sélectionnés vers le bas en modifiant au besoin l'influence du "Proportional Editing" avec la molette de la souris . </li>
<li>'''Le tour du terrain''' : sélectionnez tous les points du tour du terrain. Pour chaque côté du carré, cliquez très près du bord en pressant sur les touches MAJ + ALT en même temps. Cela va sélectionner tous les points d'un côté. Déplacez les points  sélectionnés  vers le bas pour fermer le terrain de tous les côtés dans OpenSim.</li>
</ol>
|}


[https://peertube.stream/w/k5qKGDYNA24kzvtaPHSRS6 Lien vers la vidéo.]
* Utiliser le modèle prédéfini, par exemple '''"river"''', pour cela tout en haut de la fenêtre des options de l'add-on, ouvrez le menu déroulant '''"Opérator Presets"'''.
=== Matériaux et textures du terrain ===
* Un peu plus bas dans cette fenêtre, définissez les subdivisions X et subdivisions Y à 133.
{|
<gallery>
|<peertube>https://peertube.stream/w/facyzY5JPkVn3TonvapJFN</peertube>
Fichier:Options landscape.jpg| Options
|style='padding-left:40px'|<ol>
Fichier:Terrain phase 001.png| Terrain river
<li>'''Créer les matériaux ''':  Dans l'éditeur de propriétés des matériaux (icone sphérique orange), créez un nouveau matériau  en cliquant sur le bouton "new". Nommez le matériau par exemple terrain_001.  Pour ajouter les trois autres nouveaux matériaux, cliquez sur le bouton + à droite de la liste des matériaux puis "New". Créez ainsi trois autres matériaux : terrain_002, terrain_003 et terrain_004.</li>
</gallery>
<li>'''Assignez les matériaux aux 4 portions du terrain''' : Sélectionnez les points d'un des 4 carrés. Sélectionnez le premier matériaux dans l'éditeur de propriétés des matériaux. Asssignez ce matériau au carré sélectionné à l'aide du bouton "Assign". Faire la même chose avec les trois autres carrés en leur assignant respectivement de nouveaux matériaux  terrain_002, terrain_003 et terrain_004.</li>
<li>'''Ajouter des textures aux 4 matériaux''' : placez-vous dans l'espace de travail Shading. En haut sélectionnez Slot 1 puis ajoutez une image Texture  au matériaux terrain_001 : dans le "Shader Editor" Add/Texture /Image Texture. Reliez le point Color de l'Image Texture au point Base Color du Principled BSDF. Le carré correspondant au matériel se colorie en noir dans la vue 3D . Dans l'Image Texture cliquez sur "New" pour créer une nouvelle texture. Nommez la texture Texture_terrain_001. Utilisez la couleur blanche. Pressez sur New Image.  Faites la même chose pour slot 2 et creez la texture texture_terrain_002, puis slot3 avec texture_terrain_003 et enfin slot 4 avec texture_terrain_004. </li>
</ol>
|}


[https://peertube.stream/w/facyzY5JPkVn3TonvapJFN Lien vers la vidéo.]
== Pourtour du terrain ==
* En '''mode object''', délectionner le plan qui simule le niveau de l'eau et le masquer à l'aide de '''la touche H''' .
* En '''mode Edit''', sélectionner les sommets de la périphérie du terrain. Pour chaque côté, placez le pointeur de la souris près du bord et en pressant sur les touchez SHIFT + ALT faire un clique gauche. La ligne de sommets devait se sélectionner en une seule fois. Faire cela sur les 4 côtés.
* Extruder une fois ces sommets vers le bas avec '''la touche E puis Z''' (2 ou trois carreaux de la grille).
* Égaliser la hauteur des sommets : '''S puis Z puis 0'''
* Divisier la hauteur des bords avec '''CTRL + R''' et faire 6 boucles avec la '''molette''' de la souris.
* En '''mode Object''' sélectionner le terrain et appliquer les modifications du mesh : CTRL + A  et sélectionner All Transforms.
<gallery>
Fichier:Terrain phase 001 H.jpg|Utiliser H
Fichier:Terrain phase 001 periph.jpg|Périphérie
Fichier:Terrain phase 001 extruder.jpg | E + Z
Fichier:Terrain phase 001 egaliser.png | S puis Z puis 0
Fichier:Terrain phase 001 decoupage.jpg | CTRL + R et molette
Fichier:Terrain phase 001 modif.jpg |Modifications appliquées
</gallery>


=== Peindre des textures ===
= Dessiner les coutures du terrain =
* [https://peertube.stream/w/p6YaWMMHaVLfssVC5Z1fd9 Lien vers la vidéo.]
== Coutures des bords ==
<peertube>https://peertube.stream/w/p6YaWMMHaVLfssVC5Z1fd9</peertube>
* En mode Edit, sélectionner la première ligne de sommets au-dessus des bords avec  '''SHIFT + MAJ''' et en faisant un '''clic gauche''' tout près de la ligne. Faire cela sur les 4 côtés. En cas d'erreur supprimer la dernière action avec '''CTRL + Z'''. On '''zoome''' avec la '''molette de la souris''' pour être plus précis.  
<ol>
* Marquer la couture depuis le menu '''Edge''' avec '''Mark Seam'''.
<li>'''Installation''' :  Placez-vous dans l'espace de travail "Texture Paint". Méthode d'affichage "Viewport Shading". Vous êtes en mode Texture Paint dans la vue 3D. </li>
* Sélectionner les arêtes des 4 angles des bords du terrain avec le raccourci clavier '''SHIFT + MAJ''' vu précédemment.
<li>'''Préparer la peinture dans la vue 3D ''': Dans l'espace 3D, sous la barre de menu, trouvez le sélectionneur de textures et sélectionnez "Texture_terrain_001". Ouvrez la "Sidebar " (N) et cliquer sur l'onglet "Tool". L'outil des paramètres de peinture s'ouvre. Sous "Brush Asset" la brosse "Paint Hard " doit être sélectionnée. Si ce n'est pas le cas, faites-le.  Sous "Color Picker" sélectionnez une couleur. </li>
* Marquer la couture depuis le menu '''Edge'''  avec '''Mark Seam'''.
<li>''' Préparer la peinture dans l'éditeur d'image, fenêtre de gauche ''' : Dans l'éditeur d'image, sélectionnez également la texture "Texture_terrain_001". </li>
<gallery>
<li>'''Faire un test de peinture avec une couleur ''': Nous allons tester la peinture avec une couleur mais ce test sera effacé plus tard. Sélectionnez le pinceau en haut de la liste des outils placés à gauche de la vue 3D. Essayez de peindre le carré qui correspond au matériau terrain-001. La texture dans l'éditeur d'image devrait refléter ce que vous faites sur le terrain. Inversement, vous pouvez également peindre sur la texture. La texture du terrain sera modifiée en même temps. Vous pouvez effacer ce que vous avez fait avec du blanc.</li>
Fichier:Terrain phase 002 selection.jpg|Sélection
<li>'''Peindre avec une image''' : Tout d'abord, chargez une texture depuis un support quelconque. Pour cela, dans l'éditeur de propriétés, ouvrez le panneau des propriétés des textures en cliquant sur l'icône en damier. Cliquez sur "New". Le type doit être "Image or Movie". Dans la section "Image" sous "Settings" cliquez sur "Open" pour chercher une image d'herbe sur votre ordinateur (bien entendu, il faudra l'avoir préparée). Dans la sidebar, la texture doit apparaître sous "Texture". Recouvrez en tapotant la première texture du terrain. Si vous faites glisser le curseur, vous obtiendrez des traînées pas très jolies. Vous pouvez aussi faire varier la taille du pinceau avec "F" ou en zoomant et dézoomant. Si vous peignez sur l'ensemble du terrain dans la vue 3D, vous peindrez toutes les textures. En revanche dans l'éditeur d'image il faudra changer de texture. Pour faire un fond il vaut mieux peindre sur la texture pour s'assurer de ne pas avoir de trou dans la texture.</li>
Fichier:Terrain phase 002 bord sup.jpg | Ligne supérieure
<li>'''Utiliser une autre texture''' : créez une nouvelle texture en cliquant sur l'icone représentant deux feuilles l'une sur l'autre. Vous pouvez renommer cette texture "Rocher". Chargez une texture de roche que vous aurez préalablement préparée sur votre machine. Vous pouvez peindre les montragnes avec cette texture toujours en  tapotant  et en changeant la taille du pinceau pour éviter les répétitions. Mettez-vous bien en face de ce que vous peignez. À  partir de là, vous pouvez utiliser autant de textures ou de couleurs que vous désirez.  </li>
Fichier:Terrain_phase_002_arete.jpg | Angle
<li>'''Enregistrer les textures''' : Pour enregistrer les textures, vous pouvez aller dans l'éditeur d'images menu "Image / Save All Images". Les textures se placent où votre fichier blend est enregistré. Vous pouvez aussi sélectionner une image et l'enregistrer séparément avec "Image/save" ou "Image/Save as". N'oubliez pas d'enregistrer souvent vos textures  pour ne pas perdre votre travail. Si vous voyez un astérisque à la suite du  nom du menu "Image" comme ceci "Image *", cela signifie qu'une ou plusieurs textures ne sont pas encore enregistrées.</li>
Fichier:Terrain phase 002 coutures.png | Coutures
</ol>
</gallery>


=== Exporter le terrain en mesh au format Collada ===
== Dessiner 36 carrés sur le terrain ==
{|
*  Sélectionner les bords du terrain. Pour cela, passer en sélection par face et sélectionner la ligne inférieure des faces avec '''SHIFT + MAJ'''. Les 4 côtés devraient être sélectionnés en une fois. Ensuite,  enfoncer la touche '''CTRL et presser la touche + de clavier numérique''' pour sélectionner une ligne supplémentaire. Presser sur la touche + pour sélectionner l'ensemble des bords du terrain. Pour désélectionner une ligne, utiliser la '''touche - du pavé numérique''' à la place de la touche +.  
|<peertube>https://peertube.stream/w/c3fJaC5g1tVHq4TYSFcCVn</peertube>
* Masquer les bords avec la '''touche H'''.
|style='padding-left:40px'|<ol>
* Passer en vue du dessus avec  '''NUM 7''' (touche 7 du pavé numérique) et en sélection par point.
<li>'''Décimate''' : le maillage est sans doute assez lourd pour l'importer dans OpenSim. Nous allons l'alléger. Pour cela placez-vous dans l'espace de travail "Modeling"en mode Object. Dans le panneau des propriétés, cliquez sur la petite clé anglaise bleue pour ouvrir les propriétés des "Modifiers". Ajoutez un modificateur "Decimate" : Add Modifier/Generate/Decimate . Définissez le ratio à 0.3. Vérifiez que le mesh et sa texture ne sont pas déformés et appliquez le modificateur. Pour cela, dans le modificateur, cliquez sur la petite flèche vers le bas, à droite de l'appareil photo puis sur "Apply". La texture est un peu déformée sur les bords du terrain mais on ne la verra pas cette partie étant sous l'eau sur le pourtour de la région. </li>
* Sélectionner le bord gauche du plateau du terrain avec '''SHIFT + ALT''' et '''clic gauche''' de la souris (toujours zoomer pour se mettre proche du bord cible).  
<li>'''Exporter le mesh au format Collada ''' : Sélectionnez le mesh. Ouvrez le menu "File/Export/Collada(.dae)(Legacy)". Dépliez "Operator Presets" au-dessus de la colonne de droite et sélectionnez "sl + open sim static". Dans le champ d'édition au bas de la fenêtre donnez un nom à votre mesh, par exemple "Terrain_tuto_oswiki.dae". Cliquez sur le bouton "Export COLLADA".</li>
* Utiliser la technique de '''la touche NUM + avec CTRL''' 22 fois pour sélectionner 22 lignes supplémentaires. (Rappel : enfoncer la touche CTRL et utiliser la touche + du pavé numérique pour sélectionner les autres lignes. )
</ol>
* Repérer la dernière ligne sélectionnée. Désélectionner tout avec '''ALT + A''' et, sélectionner cette dernière ligne  avec '''SHIFT + ALT et clic''' et la marquer depuis le menu '''Edge''' avec '''Mark Seam.'''
|}
* Laisser cette ligne sélectionnée et utiliser la combinaison '''CTRL + NUM+''' 22 fois pour repérer la prochaine ligne de couture à marquer avec '''Mark Seam'''. Attention les lignes à gauche de la ligne de départ vont aussi être sélectionnées. Seules les lignes de droite nous intéressent ici.
* Continuez ainsi pour obtenir 6 subdivisions de 22 lignes chacune sur la largeur du terrain.  
* Subdiviser le terrain de la même façon en partant de la ligne horizontale du dessus pour obtenir 6 subdivisions verticales du terrain. Ainsi la grille obtenue forme 36 carrés.
<gallery>
Fichier:Terrain phase 003 base.png |Sélection par face
Fichier:Terrain_phase_003_selection.jpg | CTRL + NUM +
Fichier:Terrain phase 003 selection complete.jpg |Sélection
Fichier:Terrain phase 003 bords masques.png |Masquer avec H
Fichier:Terrain phase 004 bord gauche.png |Bord gauche
Fichier:Terrain phase 004 22 lignes.png |23 lignes
Fichier:Terrain phase 004 ligne 22 marquee.jpg |Couture
Fichier:Terrain phase 004 selection suite.jpg | Repérage suite
Fichier:Terrain phase 004 divisions horizontales.jpg |Subdivisions horizontales
Fichier:Terrain phase 004 selection horizontale.jpg | Sélection horizontale
Fichier:Terrain phase 004 36 carres.jpg | 36 carrés.
</gallery>


[https://peertube.stream/w/c3fJaC5g1tVHq4TYSFcCVn Lien vers la vidéo.]
= Générer les UVMap =
== UVMap des bords ==
* En mode Edit, faire réapparaître les bords avec '''ALT + H'''.
* Sélectionner uniquement le plateau en inversant la sélection avec '''CTRL + I'''.
* Masquer le plateau avec '''la touche H'''.
* Sélectionner l'ensemble des bords du terrain avec la touche '''A en mode Edit'''.
* Dans l'espace de travail '''UV Editing''', génerer l'UVMap des bords depuis le '''menu UV'''. Préférer '''Unwrap Minimum Strech''' si la version de Blender 3D le permet, sinon utiliser '''Unwrap Angle Bassed'''. L'UVMap des bords s'affiche dans la fenêtre de l'éditeur UV.
<gallery>
Fichier:Terrain phase 005 afficher bords.jpg| Bords affichés
Fichier:Terrain phase 005 selection plateau.jpg |Plateau sélectionné
Fichier:Terrain phase 005 plateau masque.png | Masquer avec H
Fichier:Terrain phase 005 selection bords.png |Sélection avec A
Fichier:Terrain phase 005 UVMap bords.jpg | UVMap des bords
</gallery>


=== Importer et mettre en place le terrain dans OpenSim ===
== UVMAP du plateau ==
{|
* Afficher le plateau du terrain avec la combinaison de touches '''ALT + H'''.
|<peertube>https://peertube.stream/w/bdEW9XzyZiVf5WJFSMfxmC</peertube>
* Déselectionner le plateau avec '''ALT + A'''. Sélectionner chaque côté du bord du terrain en plaçant ''la souris sur une zone délimitée par des coutures'' et utiliser la '''toucher L'''. Il y a 4 zones, une par côté.
|style='padding-left:40px'|<ol>
* Masquer les bords avec la '''touche H'''.  
<li>'''Importer le mesh du terrain''' : Dans firestorm utilisez le menu '''Construire/Charger/Modele'''. Pour la configuration, voir la vidéo ou surtout lire [http://opensimulator.org/wiki/How_To_Upload_Mesh/fr '''cette page'''] (qu'il faudra aussi que je relise un jour).</li>
* '''Le but''' ici est de maximiser la taille et le nombre d'images à importer dans OpenSim afin d'obtenir une texture aussi nette que possible. Il sera donc nécessaire de générer l'UVMap pour chacune des 36 zones carrées délimitées par des coutures sur le plateau du terrain, et ce, successivement, afin qu'elles occupent le maximum d'espace. Je n'ai pas trouvé d'autre solution, mais peut-être en existe-t-il d'autres. Dans tous les cas, cela nécessitera de répéter cette opération 36 fois.
<li>''' Importer les 4 textures du terrain ''' : Utilisez le menu '''Construire/Charger/Lot...''' et sélectionnez toutes les textures du mesh créées dans Blender3D. </li>
* Dans l'espace de travail UV Editing, dans la vue 3D, se placer en vue du dessus '''NUM 7'''.Par convention, les carrés seront numérotés de gauche à droite et de haut en bas.
<li>'''Placer et redimensionner le mesh dans la région''' : Placez le mesh du terrain au centre de la région aux coordonnées X= 128.0 et Y= 128.0. Le mesh fait 2 m de coté, donc si on le multiplie par 128 on obtient 256 m qui est la taille du côté de la région. Pour que le mesh conserve ses proportions, on multiplie par 128 les dimensions du mesh sur les trois axes. Dans l'éditeur d'objet, sous "Taille", multipliez les trois dimentions par 128.</li>
* En mode Édition et en mode sélection par face, placer le curseur de la souris sur la zone 1 et appuyer sur la touche L pour sélectionner cette zone.
<li>'''Effacer le terrain d'origine''' : Dans la console de la région, vous pouvez envoyer une commande comme "terrain elevate -10". Ne vous trompez pas de région si vous avez plusieurs régions sur le même simulateur.</li>
* Générer l'UVMap de cette zone depuis le menu UV et choisir '''Unwrap Minimum Stretch''' si la version de Blender est supérieure ou égale à 4.3 ; sinon, choisir '''Unwrap Angle Based'''.
<li>''' Appliquer les textures ''' : Sélectionnez chaque carré et appliquez les textures du terrain que vous venez de charger. </li>
* Sélectionner chaque zone une par une pour générer son UVMap comme indiqué ci-dessus. Veiller à ce qu'une seule zone soit sélectionnée. Pour désélectionner la zone précédente, il suffit de cliquer dans la nouvelle zone.
</ol>
* Il est préférable de vérifier rapidement si toutes les UVMaps ont été générées. Pour cela, une petite routine très rapide peut être utilisée : cliquer sur une zone, appuyer sur L, l'UVMap de la zone s'affiche dans l'éditeur UV, cliquer sur la zone suivante, appuyer sur L, etc. Si une UVMap ne s'affiche pas, c'est qu'elle n'a pas été générée, il faudra le faire.
|}
<gallery>
Fichier:Terrain phase 005 selection plateau.jpg | ALT + H
Fichier:Terrain phase 006 selection par zone.png | Sélection par zone avec L
Fichier:Terrain phase 005 afficher bords.jpg| Bords sélectionnés
Fichier:Terrain phase 006 plateau.jpg | Bords masqués
Fichier:Terrain phase 006 36 carres num.jpg | Numérotation
Fichier:Terrain phase 006 selection de zone.jpg |Sélection par zone avec  L
Fichier:Terrain phase 006 uvmap carre.jpg | UVMap d'une zone
</gallery>


[https://peertube.stream/w/bdEW9XzyZiVf5WJFSMfxmC Lien vers la vidéo.]
= Créer les matériaux =
== Matériau des bords ==
* En '''mode Edit''', afficher et sélectionner les bords du terrain comme vu précédemment.
* Ouvrir le '''panneau des propriétés des matériaux''' (petite icône orange) dans l'éditeur des propriétés.
* Appuyer sur le bouton '''"New"'''. Nommer le matériau, par exemple "Terrain_Bords". Appuyer sur le bouton '''"Assign"''' pour attribuer le nouveau  materiau à la sélection, c'est à dire ici à l'ensemble des bords du terrain.
* Il est possible de modifier la couleur dans '''Base Color'''.
* Attention, pour l'instant, un seul matériau a été créé. Même si ce matériau est assigné à une partie du mesh, il est appliqué sur '''l'ensemble du mesh'''.
<gallery>
Fichier:Terrain phase 005 afficher bords.jpg| Bords sélectionnés
Fichier:Terrain phase 007 proprietes materiaux.jpg|Matériaux
Fichier:Terrain phase 007 materiau bords.jpg | Configuration
Fichier:Terrain phase 007 materiau vert.jpg | Ensemble du mesh
</gallery>


== Méthode avec un add-on ==
== Matériaux des carrés ==
=== Utiliser l'add-on A.N.T.Landscape dans Blender3D ===
=== Créer les matériaux ===
{|
* Créer un matériau de base qui sera copié pour chacune des 36 zones carrées du plateau du terrain. Pour cela,  dans le panneau des propriétés des matériaux,  appuyer sur '''le bouton +''' en haut à droite. Appuyer sur '''New''' et nommer le nouveau matériau créé, par exemple, '''"Terrain_carre_modele"'''.  
|<peertube>https://peertube.stream/w/vN8L3sG2Kj2uWZzT57BfFW</peertube>
* Aller dans l'espace de travail '''Shading'''. Dans l''''éditeur de Shader''' le matériau que nous venons de créer est représenté sous la forme d'un '''Système de Nœuds'''.
|style='padding-left:40px'|<ol>
* Dans Blender, le terme '''nœud''' est utilisé pour désigner les éléments du système de création de matériaux. Bien que ce terme ne soit pas toujours intuitif, il fait référence à des points de connexion qui '''modifient le signal''' final, allant '''d'une source à un émetteur'''. Chaque nœud représente une fonction ou un processus, et les connexions entre eux déterminent comment les données sont traitées pour créer le matériau final.
<li>'''Installer l'add-on A.N.T.Landscape ''' : Ouvrez le menu "Edit/Preferences...". Allez dans "Get Extensions" et recherchez "Landscape". Dans la liste des add-ons proposés, vous devriez voir "A.N.T.Landscape". C'est un add-on  sous licence "GNU General Public Licence v2.0 or later". Cliquez sur le bouton "Install". Fermez la fenêtre des préférences.</li>
* Avec '''SHIFT + A'''  faire apparaître le menu '''Add''' qui permet d'ajouter un nouveau nœud . Cliquer sur  '''Search''' et cherchez le nœud '''Image Texture'''. Cliquer sur ce nœud et le placer dans l'éditeur de shader. Ce nœud va permettre d'assigner une texture au matériau.
<li>'''Ajouter un mesh  Landscape''' : Dans la vue 3D, ajoutez un mesh Landscape depuis le menu "Add/Mesh/Landscape". Le terrain par défault de l'add-on s'affiche dans la vue 3D. Pour le modifier à l'aide des options de l'add-on,  il ne faut surtout pas désélectionner le mesh, le modifier, changer de mode ou d'espace de travail. Le panneau des options disparaîtrait. Vous pouvez uniquement déplacer la caméra ou changer de vue. </li>
* Relier le point '''Color''' du nœud '''Image Texture''' au point '''Base Color''' du nœud '''Principal BSDF''' : cliquer avec le bouton gauche sur le premier point, maintenir le bouton enfoncé, tirer jusqu'au deuxième point et relâcher.  
<li>'''Utiliser les options de l'add-on ''' : Dépliez le panneau des options de l'add-on placé en bas à gauche de la vue 3D. Vous pouvez modifier le mesh à l'aide de nombreuses options (voir la vidéo). Vous pouvez aussi choisir un modèle de terrain prédéfini. Pour cela sélectionnez-en un dans le menu déroulant "Operator Presets" placé tout en haut du panneau des options. </li>
* Créer une nouvelle image en appuyant sur '''New''' dans le nœud '''Image Texture'''. Donner un nom à l'image comme par exemple, "Terrain_Texture". Définir les dimensions de l'image : 2048 pour la largeur (Width)  et 2048  pour la hauteur (Height). À noter : Si on indique 1024*2, Blender 3D  effectuera automatiquement l'opération et affichera 2048. Appuyer sur le bouton '''New Image''' pour terminer.
<li> '''Éditer le mesh ''' : Si vous avez terminé d'utiliser les options de l'add-on,  vous pouvez éditer votre terrain. Les options ne seront plus disponibles. </li>
* Générer 36 matériaux à partir matériau de base qui vient d'être créé. Pour chaque matériau :
</ol>
# Dans l'éditeur de propriété des matériaux appuyer sur le '''bouton +'''.
|}
# À gauche du bouton New, déplier la liste des matériaux disponibles et sélectionner "Terrain_carre_modele".  
# Créer un nouveau matériau en cliquant sur l''''icône New material''' à gauche du nom du materiau. Un numero est ajouté au nom. Le nom du dernier matériaux généré devrait être '''Terrain_carre_036'''.


[https://peertube.stream/w/vN8L3sG2Kj2uWZzT57BfFW Lien vers la vidéo.]
<gallery>
=== Découpage du mesh ===
Fichier:Terrain phase 008 ajouter materiau.jpg | Nouveau matériau
{|
Fichier:Terrain phase 008 materiau base.jpg | Matériau de base
|<peertube>https://peertube.stream/w/nt5Rv9vH3qMjQtgrKvJ9TA</peertube>
Fichier:Terrain phase 008 système de noeuds.jpg | Système de nœuds
|style='padding-left:40px'|<ol>
Fichier:Terrain phase 008 Menu Add.png | Menu Add
<li>'''Découper en carrés ''' : Pour sélectionner les deux médiatrices du maillage (lignes qui passent par le milieu d'un côté, sont perpendiculaires à ce côté et passent par le centre), appuyez sur ALT + SHIFT et cliquez près de chaque ligne. Ensuite, marquez ces lignes depuis le menu Edge en choisissant 'Mark Seam'. Ces deux lignes serviront de repère pour générer les UVMap. Vous pouvez également découper votre maillage différemment, choisir d'autres lignes ou augmenter le nombre de segments pour améliorer la définition des textures de votre terrain. </li>
Fichier:Terain phase 008 Image texture.jpg | Nœud Image Texture
<li>'''Assigner des matériaux  ''' :  En mode Edit et mode de sélection par face, sélectionnez un 'îlot UV' (voir la vidéo), créez un nouveau matériau (terrain_001) dans le panneau des propriétés des matériaux et assignez-le à la sélection en cliquant sur le bouton 'Assign'. Procédez de la même manière pour chaque 'îlot UV'. Vous devez avoir autant de matériaux (terrain_002, terrain_003, ..., terrain_00x) que d'îlots UV. Pour info : la touche B est utilisée pour effectuer une sélection par boîte, la combinaison de touches Ctrl + + est utilisée pour étendre la sélection ( + du pavé numérique), la touche H et la combinaison Alt + H sont utilisées pour gérer la visibilité des objets ou des éléments dans votre scène, H masque et ALT + H affiche ce qui a été masqué. </li>
Fichier:Tarrain phase 008 connexion Image texture.jpg |Connexion
<li>'''Générer les UVMap ''' : Toujours en mode Édition, désélectionnez l'ensemble du maillage (ALT + A). Dans le panneau des propriétés des matériaux, choisissez le premier matériau et cliquez sur le bouton 'Select'. Le premier 'îlot UV' sera alors sélectionné. Créez l'UV Map de cette partie à l'aide du menu UV en choisissant 'Unwrap Angle Based'. Procédez de la même manière pour chaque matériau, en veillant à bien tout désélectionner avant de passer à un autre matériau.</li>
Fichier:Terrain phase 008 creer Image.jpg | Créer une image
<li> '''Modifier le mesh ''' :  Sélectionnez tous les sommets du pourtour du maillage. Cliquez sur le bouton de 'Proportional Editing' (petite icône avec une cible au centre de la barre de menu). Déplacez l'ensemble des points vers le bas (G puis Z) en ajustant l'influence du 'Proportional Editing' à l'aide de la molette de la souris. Égalisez la base du maillage en utilisant la combinaison de touches S, puis Z, puis 0. Adaptez la hauteur pour qu'aucun sommet ne dépasse du bord inférieur (G puis Z). </li>
Fichier:Terrain phase 008 materiau carré.jpg | Panneau des matériaux
<li>'''Texturer et utiliser le mesh ''' : voir les vidéos [[Terrain_en_mesh_et_height_map#Peindre_des_textures|Peindre des textures]], [[Terrain_en_mesh_et_height_map#Exporter_le_terrain_en_mesh_au_format_Collada| Exporter le terrain au format Collada]] et [[Terrain_en_mesh_et_height_map#Importer_et_mettre_en_place_le_terrain_dans_OpenSim|Importer et mettre en place le terrain dans OpenSim]]. </li>
Fichier:Terrain phase 008 meme materiau.jpg | Matériau copié
<li> </li>
Fichier:Terrain phase 008 materiaux.jpg | Plusieurs matériaux
</ol>
</gallery>
|}
=== Assigner les matériaux ===
* Dans l''''espace de travail Shading''', en '''mode Edit''' et vue du dessus ('''NUM 7''') , sélectionner un des carrés du plateau du terrain avec la '''touche L'''.
* Sélectionner le matériaux correspondant au numéro du carré (carré N, matériau Terrain_carre_modele_N) dans l''''éditeur de shader''' ou dans l''''éditeur de propriété des matériaux'''.
* Assigner le matériau à la sélection en appuyant sur le '''bouton Assign''' dans l''''éditeur de propriété des matériaux'''.
* Dans l''''éditeur de shader''' créer une nouvelle texture sur la base de la texture créée dans le premier matériau, en cliquant sur '''le numéro''' à droite du nom de l'image dans le '''nœud Image Texture'''. La texture à son tour prend un numéro comme le matériau, signe que la texture n'est plus liée à la texture de base et qu'elle pourra être modifiée indépendamment.  
* Procéder ainsi pour les 36 carrés du plateau du terrain.
<gallery>
Fichier:Terrain phase 009 selection avec L.jpg | Sélection
Fichier:Terrain phase 009 selection materiau.jpg | Matériau
Fichier:Terrain phase 009 assigner.jpg | Assigner
Fichier:Terrain phase 009 Image texture.png | Icône numérotée
Fichier:Terrain phase 009 texture dissociee.jpg | Nouvelle texture
Fichier:Terrain phase 009 selection en cours.jpg | Assignation en cours
Fichier:Terrain phase 009 materiaux assignes.png | Matériaux assignés
</gallery>


[https://peertube.stream/w/nt5Rv9vH3qMjQtgrKvJ9TA Lien vers la vidéo.]
= Peinture des 37 textures =
== Apprendre à peindre dans Blender : les bords du terrain ==
=== Créer une image ===
* Se placer dans l'espace de travail '''Shading''' et sélectionner '''Terrain_bords''' (le matériau des bords) dans la liste des '''Slots'''.
* Avec '''SHIFT + A'''  faire apparaître le menu '''Add''' qui permet d'ajouter un nouveau nœud . Cliquer sur  '''Search''' et cherchez le nœud '''Image Texture'''. Cliquer sur ce nœud et le placer dans l'éditeur de shader. Ce nœud va permettre d'assigner une texture au matériau.
* Relier le point '''Color''' du nœud '''Image Texture''' au point '''Base Color''' du nœud '''Principal BSDF''' : cliquer avec le bouton gauche sur le premier point, maintenir le bouton enfoncé, tirer jusqu'au deuxième point et relâcher.
* Créer une nouvelle image en appuyant sur '''New''' dans le nœud '''Image Texture'''. Donner un nom à l'image comme par exemple, "Bords_Texture". Définir les dimensions de l'image : 2048 pour la largeur (Width)  et 2048  pour la hauteur (Height). Appuyer sur le bouton '''New Image'''.
<gallery>
Fichier:Terrain phase 010 Slots.png | Slots
Fichier:Terrain phase 008 Menu Add.png | Menu Add
Fichier:Terain phase 008 Image texture.jpg | Nœud Image Texture
Fichier:Tarrain phase 008 connexion Image texture.jpg |Connexion
Fichier:Terrain phase 010 bords texture.png  |Texture des bords.
</gallery>
=== Masquer une partie du maillage ===
* Se placer dans l''''espace de travail Texture Paint'''.
* En peignant les bords, il est possible de peindre involontairement et de manière peu soignée le plateau du terrain. Ce tutoriel explique comment '''protéger une partie d'un mesh''' des projections de peinture indésirables.
* Pour cela, dans la vue 3D sélectionner en '''mode Edit''' les bords du mesh avec la '''touche L''' puis inverser la sélection avec '''CTRL + I'''.
* Enfin, masquer le plateau avec la '''touche H'''. Passer en '''mode object'''.
* Seuls les bords sont visibles et pourront être peints.
<gallery>
Fichier:Terrain phase 010 Bords.jpg| Bords à peindre
</gallery>
=== Découvrir l'espace de travail Texture Paint ===
* Dans ce tutoriel, la texture des bords aura l'apparence de la roche, mais il est également possible d'assurer une continuité avec celle du plateau. La capture d'écran intitulée '''Texture Paint''' dans la '''galerie d'images''' ci-dessous facilite la compréhension de ce tutoriel.
* Sélectionner la '''texture des bords''' dans l''''éditeur d'images''' et dans la '''vue 3D''' comme indiqué sur la capture d'écran.
* Déplier  le '''panneau latéral''' de la vue 3D en appuyant sur la '''touche N''' puis ouvrir l'onglet '''Tool''' (outils) où sont regroupés les outils et options spécifiques pour peindre directement sur les textures des objets, permettant de sélectionner des pinceaux, de régler leur taille, leur force, et d'appliquer divers effets de peinture.
<gallery>
Fichier:Terrain phase 010 Texture Paint.jpg | Texture Paint
</gallery>
=== Test de peinture dans Blender 3D ===
* Pour vérifier que tout est bien en place, faire un '''test de peinture''' sur le mesh avec une simple couleur. Pour cela, en mode '''Texture Paint''', sélectionner '''une couleur''' dans le sélecteur de couleur ('''Color Picker''') dans les outils de peinture du panneau latéral. Vérifier que l''''icône Brush''' (le petit pinceau en haut à gauche de la vue 3D, est bien sélectionnée. Si c'est le cas, '''le curseur de la souris est un cercle''' avec une croix à l'intérieur. La taille du cercle reflète la taille du pinceau. Appuyer sur '''la touche F''' permet de modifier rapidement la taille du pinceau. Une fois la touche enfoncée, il suffit de déplacer la souris pour ajuster la taille selon les besoins.
* '''Avertissement 1 ''': si le pinceau est trop grand, l'ordinateur devra gérer la modification de surfaces étendues, ce qui demande beaucoup de ressources. Selon la puissance de la machine, cela peut entraîner un '''risque de plantage''' sans possibilité de retour en arrière.
* '''Avertissement 2''' : '''les modifications apportées à la texture ne sont pas enregistrées automatiquement'''. Si Blender est fermé sans avoir enregistré le fichier, ces modifications seront perdues. Pour éviter cela, activez l'option File > External Data > automatically packs  et assurez-vous d'enregistrer votre fichier Blender et vos textures aussi souvent que possible.
* '''Le test''' : réduire le pinceau, dessiner sur le mesh. Le dessin devrait apparaître sur la texture de l'éditeur d'images. Inversement, dessiner sur la texture dans l'éditeur d'images. Les modifications devraient apparaître sur le mesh.
<gallery>
Fichier:Terrain phase 010 test peinture.jpg | Test de peinture
</gallery>
=== Trouver une texture  avec BlenderKit ===
* Il est possible d'utiliser une texture ou une image pour peindre sur le mesh, comme une texture de roche. Cela peut être n'importe quelle texture : une texture stockée sur  ordinateur, une texture téléchargée depuis un site quelconque ou un site spécialisé comme [https://ambientcg.com/list?q=rock&sort=popular '''ambientcg.com]'''. Voyons comment trouver facilement des '''textures de bonne qualité et gratuites avec BlenderKit'''.
* '''BlenderKit''' est un add-on pour Blender 3D qui permet aux utilisateurs d'accéder à une bibliothèque en ligne de modèles 3D, de matériaux, de brosses et d'autres ressources. Il facilite l'importation de ces éléments directement dans les projets Blender. BlenderKit propose à la fois des ressources gratuites et payantes.
* Depuis le menu '''Edit>Preferences> Get Extensions''', rechercher BlenderKit. Appuyer sur le bouton '''Install''' placé à côté du nom de l'add-on '''BlenderKit [FREE]'''. Fermer la fenêtre des préférences. La '''barre de menu BlenderKit''' s'affiche en haut et au centre de la vue 3D.
* Dans l'espace de travail Layout, dans l'éditeur de propriété des matériaux, sélectionner le matériau Terrain_carre_modele.
* Depuis le champ de recherche de BlenderKit, '''chercher "coast rock material"'''. Faire un '''clic droit''' sur le deuxième matériau  proposé (voir l'image de la galerie). Le matériaux doit apparaître dans la liste des matériaux dans le panneau des propriétés des matériaux.
* Passer dans l''''espace de travail Shading'''. '''Le système de nœuds''' du matériau téléchargé s'affiche dans l''''éditeur de shader'''.
* Cliquer sur '''le nœud Base Color''', qui est un nœud Image Texture. La texture '''Albedo''' (définissant la couleur de base du matériau) s'affiche dans l'éditeur d'image. En cliquant sur d'autres nœuds Image Texture, d'autres textures s'affichent, comme la normal map par exemple. Cependant, seule la texture du nœud Base Color sera utilisée ici.
* Pour enregistrer la texture, cliquer sur '''menu hamburger''' (trois traits horizontaux) puis aller dans Image> Save as ... '''Enregistrer''' la texture sur l'ordinateur.
<gallery>
Fichier:Terrain phase 011 BlenderKit.jpg |BlenderKit
Fichier:Tableau phase 011 barre blenderKit.jpg | Barre BlenderKit
Fichier:Terrain phase 012 charger materiau.jpg | Charger un matériau
Fichier:Terrain phase 012 enregistrer texture.jpg | Afficher une texture
Fichier:Tarrain phase 012 enregistrer texture roche.png | Enregistrer
</gallery>
<!-- https://ambientcg.com/list?q=rock&sort=popular, coast rock material -->


== Méthode avec une [[Lexique_des_réunions#Heightmap |height map]] ==
=== Peindre avec une texture ===
* Passer dans l'espace de travail '''Texture Paint'''. Dans l''''éditeur de propriétés''' à droite, cliquer sur l'icône des textures pour ouvrir l''''éditeur de propriétés des textures'''.
* Appuyer sur le '''bouton New''' puis sur le '''bouton Open''' pour ouvrir la texture qui vient d'être enregistrée.
* Ouvrir le '''panneau latéral''' avec '''la touche N''' et accéder aux outils ('''onglet Tool'''). Sous le menu déroulant '''Texture''', la texture récemment ouverte devrait apparaître. Si ce n'est pas le cas, cliquer sur le carré de prévisualisation des textures. Une fenêtre s'ouvre avec les textures du projet (il ne devrait y en avoir qu'une). Cliquer sur la texture de roche.
* Sous le même menu Texture, cocher la '''case Random''' pour que l'orientation de la texture change à chaque application, ce qui donnera une apparence '''plus réaliste''' à la texture créée.
* Sélectionner du '''blanc''' dans '''Color Picker''' en passant le curseur de droite du noir au blanc.
* Sélectionner la texture des bords (Bords_texture pour ce tuto)  dans l'éditeur d'image et dans la vue 3D (voir l'image Texture Paint).
*  Peindre le bord comme dans le test avec la couleur. Cette fois, il faut '''tapoter''' pour appliquer des plages de textures sur les bords, en veillant à '''varier la taille du pinceau''' pour éviter que le motif ne se répète trop. '''Se placer bien en face''' de la partie à peindre. Ici comme c'est un carré, peindre chaque côté l'un après l'autre en utilisant les touche du '''pavé numérique NUM 3, CTRL + NUM 3 , NUM 1 et CTRL + NUM 1''' pour se placer.
* '''Enregistrer la texture''' depuis le '''menu Image > Save As''' de l'éditeur d'images. Préférer un '''format jpg'''.
<gallery>
Fichier:Terrain phase 013 proprietes textures.jpg|Propriétés des textures
Fichier:Terrain phase 013 ouvrir image.jpg| Ourvir une image
Fichier:Terrain phase 013 panneau lateral.jpg| Panneau latéral
Fichier:Terrain phase 010 Texture Paint.jpg | Texture Paint
Fichier:Terrain phase 013 peindre avec texture.png|Peindre
Fichier:Terrain phase 013 bords peints.jpg
</gallery>
 
== Peindre le plateau du terrain ==
* 🏗️
* 🏗️
{|
|<peertube>https://peertube.stream/w/s6ksbSEZkXeEY9Tf6bNHur</peertube>
|style='padding-left:40px'|<ol>
<li> '''Péraper le mesh Plane''' : </li>
<li> '''Ajouter déformeur "Displace"''' :</li>
<li> '''Charger une height map''' :  </li>
<li> '''Adapter les options du modifieur et de la texture ''' : </li>
<li> '''Créer les UVMap, texturer et utiliser le mesh ''' : Voir la vidéo [[Terrain_en_mesh_et_height_map#Découpage_du_mesh| Découpage du mesh]]</li>
</ol>
|}


[https://peertube.stream/w/s6ksbSEZkXeEY9Tf6bNHur Lien vers la vidéo.]
= Exporter et importer le terrain =
== Exporter le terrain au format Collada ==
* 🏗️
== Importer le terrain et les textures dans OpenSim  ==
* 🏗️


== Méthode avec un mesh de la bibliothèque BlenderKit ==
= Installer le terrain dans OpenSim =
== Appliquer les textures sur le mesh ==
* 🏗️
== Placer le  terrain ==
* 🏗️
* 🏗️
{|
|<peertube>https://peertube.stream/w/2rMSh7QfqYXFRNWb9x6GuG</peertube>
|style='padding-left:40px'|<ol>
<li> '''Installer BlenderKit''' : </li>
<li> '''Chercher landscape dans BlenderKit''' : </li>
<li> '''Charger un mesh Free de terrain''' :</li>
<li> '''Extraire la texture''' :</li>
<li> '''Modifier le mesh''' : bords et dimensions </li>
<li> '''Exporter le mesh''' :</li>
<li> '''Importer et utiliser le terrain dans OpenSim''' :</li>
</ol>
|}


[https://peertube.stream/w/2rMSh7QfqYXFRNWb9x6GuG Lien vers la vidéo.]
= Interêt d'utiliser un mesh =
 
= Créer une [[Lexique_des_réunions#Heightmap |height map]] à partir d'un terrain en [[Lexique_des_réunions#Mesh|mesh]] =
== Créer la [[Lexique_des_réunions#Heightmap |height map]] ==
* 🏗️
* 🏗️
{|
|<peertube>https://peertube.stream/w/dc4zGKzZaADr8FtEhTP61c</peertube>
|style='padding-left:40px'|<ol>
<li> '''Créer un terrain en mesh avec landscape ou le charger''' :  taille du terrain 2x2m </li>
<li> '''Placer la caméra orthographique dessus''' : orthographique scale = 2.0</li>
<li> '''Ajouter un matériau au mesh ''' : Dans  l'espace de travail Shading : Texture Coordonnées (generated ) --> Separate XYZ (Z) --> Color Ramp --> Emission  --> Material Output</li>
<li> '''Faire un rendu de la Height map''' :  F12 + enregistrer la height map générée. </li>
<li> '''Source''' : https://blender.stackexchange.com/questions/191253/how-to-render-height-map-in-blender </li>
</ol>
|}


[https://peertube.stream/w/dc4zGKzZaADr8FtEhTP61c Lien vers la vidéo.]
= Problèmes possibles =
== Utiliser la [[Lexique_des_réunions#Heightmap |height map]] dans OpenSimulator ==
* 🏗️
* 🏗️
{|
|<peertube>https://peertube.stream/w/ktr9ibZxcRvnnMYxTTXdS4</peertube>
|style='padding-left:40px'|<ol>
<li> '''Charger la Height map pour une région OpenSim''' : commandes dans la console  de la région region change <nom de la region>, terrain load <nom de la HM>.png</li>
<li> '''Observer le résultat dans OpenSim''' :</li>
</ol>
|}
[https://peertube.stream/w/ktr9ibZxcRvnnMYxTTXdS4 Lien vers la vidéo.]

Version du 6 juillet 2025 à 10:38

Modélisation du terrain dans Blender 3D


Tout au long du tutoriel, dans Blender 3D,

  • ne pas oublier de placer le pointeur de la souris dans l'éditeur concerné par les commandes envoyées par une ou plusieurs touches du clavier ou par des boutons de la souris.
  • sauvegarder souvent le fichier blender.


Utiliser l'add-on A.N.T.Landscape

Add-on A.N.T.Landscape

Options de l'add-on

  • Utiliser le modèle prédéfini, par exemple "river", pour cela tout en haut de la fenêtre des options de l'add-on, ouvrez le menu déroulant "Opérator Presets".
  • Un peu plus bas dans cette fenêtre, définissez les subdivisions X et subdivisions Y à 133.

Pourtour du terrain

  • En mode object, délectionner le plan qui simule le niveau de l'eau et le masquer à l'aide de la touche H .
  • En mode Edit, sélectionner les sommets de la périphérie du terrain. Pour chaque côté, placez le pointeur de la souris près du bord et en pressant sur les touchez SHIFT + ALT faire un clique gauche. La ligne de sommets devait se sélectionner en une seule fois. Faire cela sur les 4 côtés.
  • Extruder une fois ces sommets vers le bas avec la touche E puis Z (2 ou trois carreaux de la grille).
  • Égaliser la hauteur des sommets : S puis Z puis 0
  • Divisier la hauteur des bords avec CTRL + R et faire 6 boucles avec la molette de la souris.
  • En mode Object sélectionner le terrain et appliquer les modifications du mesh : CTRL + A et sélectionner All Transforms.

Dessiner les coutures du terrain

Coutures des bords

  • En mode Edit, sélectionner la première ligne de sommets au-dessus des bords avec SHIFT + MAJ et en faisant un clic gauche tout près de la ligne. Faire cela sur les 4 côtés. En cas d'erreur supprimer la dernière action avec CTRL + Z. On zoome avec la molette de la souris pour être plus précis.
  • Marquer la couture depuis le menu Edge avec Mark Seam.
  • Sélectionner les arêtes des 4 angles des bords du terrain avec le raccourci clavier SHIFT + MAJ vu précédemment.
  • Marquer la couture depuis le menu Edge avec Mark Seam.

Dessiner 36 carrés sur le terrain

  • Sélectionner les bords du terrain. Pour cela, passer en sélection par face et sélectionner la ligne inférieure des faces avec SHIFT + MAJ. Les 4 côtés devraient être sélectionnés en une fois. Ensuite, enfoncer la touche CTRL et presser la touche + de clavier numérique pour sélectionner une ligne supplémentaire. Presser sur la touche + pour sélectionner l'ensemble des bords du terrain. Pour désélectionner une ligne, utiliser la touche - du pavé numérique à la place de la touche +.
  • Masquer les bords avec la touche H.
  • Passer en vue du dessus avec NUM 7 (touche 7 du pavé numérique) et en sélection par point.
  • Sélectionner le bord gauche du plateau du terrain avec SHIFT + ALT et clic gauche de la souris (toujours zoomer pour se mettre proche du bord cible).
  • Utiliser la technique de la touche NUM + avec CTRL 22 fois pour sélectionner 22 lignes supplémentaires. (Rappel : enfoncer la touche CTRL et utiliser la touche + du pavé numérique pour sélectionner les autres lignes. )
  • Repérer la dernière ligne sélectionnée. Désélectionner tout avec ALT + A et, sélectionner cette dernière ligne avec SHIFT + ALT et clic et la marquer depuis le menu Edge avec Mark Seam.
  • Laisser cette ligne sélectionnée et utiliser la combinaison CTRL + NUM+ 22 fois pour repérer la prochaine ligne de couture à marquer avec Mark Seam. Attention les lignes à gauche de la ligne de départ vont aussi être sélectionnées. Seules les lignes de droite nous intéressent ici.
  • Continuez ainsi pour obtenir 6 subdivisions de 22 lignes chacune sur la largeur du terrain.
  • Subdiviser le terrain de la même façon en partant de la ligne horizontale du dessus pour obtenir 6 subdivisions verticales du terrain. Ainsi la grille obtenue forme 36 carrés.

Générer les UVMap

UVMap des bords

  • En mode Edit, faire réapparaître les bords avec ALT + H.
  • Sélectionner uniquement le plateau en inversant la sélection avec CTRL + I.
  • Masquer le plateau avec la touche H.
  • Sélectionner l'ensemble des bords du terrain avec la touche A en mode Edit.
  • Dans l'espace de travail UV Editing, génerer l'UVMap des bords depuis le menu UV. Préférer Unwrap Minimum Strech si la version de Blender 3D le permet, sinon utiliser Unwrap Angle Bassed. L'UVMap des bords s'affiche dans la fenêtre de l'éditeur UV.

UVMAP du plateau

  • Afficher le plateau du terrain avec la combinaison de touches ALT + H.
  • Déselectionner le plateau avec ALT + A. Sélectionner chaque côté du bord du terrain en plaçant la souris sur une zone délimitée par des coutures et utiliser la toucher L. Il y a 4 zones, une par côté.
  • Masquer les bords avec la touche H.
  • Le but ici est de maximiser la taille et le nombre d'images à importer dans OpenSim afin d'obtenir une texture aussi nette que possible. Il sera donc nécessaire de générer l'UVMap pour chacune des 36 zones carrées délimitées par des coutures sur le plateau du terrain, et ce, successivement, afin qu'elles occupent le maximum d'espace. Je n'ai pas trouvé d'autre solution, mais peut-être en existe-t-il d'autres. Dans tous les cas, cela nécessitera de répéter cette opération 36 fois.
  • Dans l'espace de travail UV Editing, dans la vue 3D, se placer en vue du dessus NUM 7.Par convention, les carrés seront numérotés de gauche à droite et de haut en bas.
  • En mode Édition et en mode sélection par face, placer le curseur de la souris sur la zone 1 et appuyer sur la touche L pour sélectionner cette zone.
  • Générer l'UVMap de cette zone depuis le menu UV et choisir Unwrap Minimum Stretch si la version de Blender est supérieure ou égale à 4.3 ; sinon, choisir Unwrap Angle Based.
  • Sélectionner chaque zone une par une pour générer son UVMap comme indiqué ci-dessus. Veiller à ce qu'une seule zone soit sélectionnée. Pour désélectionner la zone précédente, il suffit de cliquer dans la nouvelle zone.
  • Il est préférable de vérifier rapidement si toutes les UVMaps ont été générées. Pour cela, une petite routine très rapide peut être utilisée : cliquer sur une zone, appuyer sur L, l'UVMap de la zone s'affiche dans l'éditeur UV, cliquer sur la zone suivante, appuyer sur L, etc. Si une UVMap ne s'affiche pas, c'est qu'elle n'a pas été générée, il faudra le faire.

Créer les matériaux

Matériau des bords

  • En mode Edit, afficher et sélectionner les bords du terrain comme vu précédemment.
  • Ouvrir le panneau des propriétés des matériaux (petite icône orange) dans l'éditeur des propriétés.
  • Appuyer sur le bouton "New". Nommer le matériau, par exemple "Terrain_Bords". Appuyer sur le bouton "Assign" pour attribuer le nouveau materiau à la sélection, c'est à dire ici à l'ensemble des bords du terrain.
  • Il est possible de modifier la couleur dans Base Color.
  • Attention, pour l'instant, un seul matériau a été créé. Même si ce matériau est assigné à une partie du mesh, il est appliqué sur l'ensemble du mesh.

Matériaux des carrés

Créer les matériaux

  • Créer un matériau de base qui sera copié pour chacune des 36 zones carrées du plateau du terrain. Pour cela, dans le panneau des propriétés des matériaux, appuyer sur le bouton + en haut à droite. Appuyer sur New et nommer le nouveau matériau créé, par exemple, "Terrain_carre_modele".
  • Aller dans l'espace de travail Shading. Dans l'éditeur de Shader le matériau que nous venons de créer est représenté sous la forme d'un Système de Nœuds.
  • Dans Blender, le terme nœud est utilisé pour désigner les éléments du système de création de matériaux. Bien que ce terme ne soit pas toujours intuitif, il fait référence à des points de connexion qui modifient le signal final, allant d'une source à un émetteur. Chaque nœud représente une fonction ou un processus, et les connexions entre eux déterminent comment les données sont traitées pour créer le matériau final.
  • Avec SHIFT + A faire apparaître le menu Add qui permet d'ajouter un nouveau nœud . Cliquer sur Search et cherchez le nœud Image Texture. Cliquer sur ce nœud et le placer dans l'éditeur de shader. Ce nœud va permettre d'assigner une texture au matériau.
  • Relier le point Color du nœud Image Texture au point Base Color du nœud Principal BSDF : cliquer avec le bouton gauche sur le premier point, maintenir le bouton enfoncé, tirer jusqu'au deuxième point et relâcher.
  • Créer une nouvelle image en appuyant sur New dans le nœud Image Texture. Donner un nom à l'image comme par exemple, "Terrain_Texture". Définir les dimensions de l'image : 2048 pour la largeur (Width) et 2048 pour la hauteur (Height). À noter : Si on indique 1024*2, Blender 3D effectuera automatiquement l'opération et affichera 2048. Appuyer sur le bouton New Image pour terminer.
  • Générer 36 matériaux à partir matériau de base qui vient d'être créé. Pour chaque matériau :
  1. Dans l'éditeur de propriété des matériaux appuyer sur le bouton +.
  2. À gauche du bouton New, déplier la liste des matériaux disponibles et sélectionner "Terrain_carre_modele".
  3. Créer un nouveau matériau en cliquant sur l'icône New material à gauche du nom du materiau. Un numero est ajouté au nom. Le nom du dernier matériaux généré devrait être Terrain_carre_036.

Assigner les matériaux

  • Dans l'espace de travail Shading, en mode Edit et vue du dessus (NUM 7) , sélectionner un des carrés du plateau du terrain avec la touche L.
  • Sélectionner le matériaux correspondant au numéro du carré (carré N, matériau Terrain_carre_modele_N) dans l'éditeur de shader ou dans l'éditeur de propriété des matériaux.
  • Assigner le matériau à la sélection en appuyant sur le bouton Assign dans l'éditeur de propriété des matériaux.
  • Dans l'éditeur de shader créer une nouvelle texture sur la base de la texture créée dans le premier matériau, en cliquant sur le numéro à droite du nom de l'image dans le nœud Image Texture. La texture à son tour prend un numéro comme le matériau, signe que la texture n'est plus liée à la texture de base et qu'elle pourra être modifiée indépendamment.
  • Procéder ainsi pour les 36 carrés du plateau du terrain.

Peinture des 37 textures

Apprendre à peindre dans Blender : les bords du terrain

Créer une image

  • Se placer dans l'espace de travail Shading et sélectionner Terrain_bords (le matériau des bords) dans la liste des Slots.
  • Avec SHIFT + A faire apparaître le menu Add qui permet d'ajouter un nouveau nœud . Cliquer sur Search et cherchez le nœud Image Texture. Cliquer sur ce nœud et le placer dans l'éditeur de shader. Ce nœud va permettre d'assigner une texture au matériau.
  • Relier le point Color du nœud Image Texture au point Base Color du nœud Principal BSDF : cliquer avec le bouton gauche sur le premier point, maintenir le bouton enfoncé, tirer jusqu'au deuxième point et relâcher.
  • Créer une nouvelle image en appuyant sur New dans le nœud Image Texture. Donner un nom à l'image comme par exemple, "Bords_Texture". Définir les dimensions de l'image : 2048 pour la largeur (Width) et 2048 pour la hauteur (Height). Appuyer sur le bouton New Image.

Masquer une partie du maillage

  • Se placer dans l'espace de travail Texture Paint.
  • En peignant les bords, il est possible de peindre involontairement et de manière peu soignée le plateau du terrain. Ce tutoriel explique comment protéger une partie d'un mesh des projections de peinture indésirables.
  • Pour cela, dans la vue 3D sélectionner en mode Edit les bords du mesh avec la touche L puis inverser la sélection avec CTRL + I.
  • Enfin, masquer le plateau avec la touche H. Passer en mode object.
  • Seuls les bords sont visibles et pourront être peints.

Découvrir l'espace de travail Texture Paint

  • Dans ce tutoriel, la texture des bords aura l'apparence de la roche, mais il est également possible d'assurer une continuité avec celle du plateau. La capture d'écran intitulée Texture Paint dans la galerie d'images ci-dessous facilite la compréhension de ce tutoriel.
  • Sélectionner la texture des bords dans l'éditeur d'images et dans la vue 3D comme indiqué sur la capture d'écran.
  • Déplier le panneau latéral de la vue 3D en appuyant sur la touche N puis ouvrir l'onglet Tool (outils) où sont regroupés les outils et options spécifiques pour peindre directement sur les textures des objets, permettant de sélectionner des pinceaux, de régler leur taille, leur force, et d'appliquer divers effets de peinture.

Test de peinture dans Blender 3D

  • Pour vérifier que tout est bien en place, faire un test de peinture sur le mesh avec une simple couleur. Pour cela, en mode Texture Paint, sélectionner une couleur dans le sélecteur de couleur (Color Picker) dans les outils de peinture du panneau latéral. Vérifier que l'icône Brush (le petit pinceau en haut à gauche de la vue 3D, est bien sélectionnée. Si c'est le cas, le curseur de la souris est un cercle avec une croix à l'intérieur. La taille du cercle reflète la taille du pinceau. Appuyer sur la touche F permet de modifier rapidement la taille du pinceau. Une fois la touche enfoncée, il suffit de déplacer la souris pour ajuster la taille selon les besoins.
  • Avertissement 1 : si le pinceau est trop grand, l'ordinateur devra gérer la modification de surfaces étendues, ce qui demande beaucoup de ressources. Selon la puissance de la machine, cela peut entraîner un risque de plantage sans possibilité de retour en arrière.
  • Avertissement 2 : les modifications apportées à la texture ne sont pas enregistrées automatiquement. Si Blender est fermé sans avoir enregistré le fichier, ces modifications seront perdues. Pour éviter cela, activez l'option File > External Data > automatically packs et assurez-vous d'enregistrer votre fichier Blender et vos textures aussi souvent que possible.
  • Le test : réduire le pinceau, dessiner sur le mesh. Le dessin devrait apparaître sur la texture de l'éditeur d'images. Inversement, dessiner sur la texture dans l'éditeur d'images. Les modifications devraient apparaître sur le mesh.

Trouver une texture avec BlenderKit

  • Il est possible d'utiliser une texture ou une image pour peindre sur le mesh, comme une texture de roche. Cela peut être n'importe quelle texture : une texture stockée sur ordinateur, une texture téléchargée depuis un site quelconque ou un site spécialisé comme ambientcg.com. Voyons comment trouver facilement des textures de bonne qualité et gratuites avec BlenderKit.
  • BlenderKit est un add-on pour Blender 3D qui permet aux utilisateurs d'accéder à une bibliothèque en ligne de modèles 3D, de matériaux, de brosses et d'autres ressources. Il facilite l'importation de ces éléments directement dans les projets Blender. BlenderKit propose à la fois des ressources gratuites et payantes.
  • Depuis le menu Edit>Preferences> Get Extensions, rechercher BlenderKit. Appuyer sur le bouton Install placé à côté du nom de l'add-on BlenderKit [FREE]. Fermer la fenêtre des préférences. La barre de menu BlenderKit s'affiche en haut et au centre de la vue 3D.
  • Dans l'espace de travail Layout, dans l'éditeur de propriété des matériaux, sélectionner le matériau Terrain_carre_modele.
  • Depuis le champ de recherche de BlenderKit, chercher "coast rock material". Faire un clic droit sur le deuxième matériau proposé (voir l'image de la galerie). Le matériaux doit apparaître dans la liste des matériaux dans le panneau des propriétés des matériaux.
  • Passer dans l'espace de travail Shading. Le système de nœuds du matériau téléchargé s'affiche dans l'éditeur de shader.
  • Cliquer sur le nœud Base Color, qui est un nœud Image Texture. La texture Albedo (définissant la couleur de base du matériau) s'affiche dans l'éditeur d'image. En cliquant sur d'autres nœuds Image Texture, d'autres textures s'affichent, comme la normal map par exemple. Cependant, seule la texture du nœud Base Color sera utilisée ici.
  • Pour enregistrer la texture, cliquer sur menu hamburger (trois traits horizontaux) puis aller dans Image> Save as ... Enregistrer la texture sur l'ordinateur.

Peindre avec une texture

  • Passer dans l'espace de travail Texture Paint. Dans l'éditeur de propriétés à droite, cliquer sur l'icône des textures pour ouvrir l'éditeur de propriétés des textures.
  • Appuyer sur le bouton New puis sur le bouton Open pour ouvrir la texture qui vient d'être enregistrée.
  • Ouvrir le panneau latéral avec la touche N et accéder aux outils (onglet Tool). Sous le menu déroulant Texture, la texture récemment ouverte devrait apparaître. Si ce n'est pas le cas, cliquer sur le carré de prévisualisation des textures. Une fenêtre s'ouvre avec les textures du projet (il ne devrait y en avoir qu'une). Cliquer sur la texture de roche.
  • Sous le même menu Texture, cocher la case Random pour que l'orientation de la texture change à chaque application, ce qui donnera une apparence plus réaliste à la texture créée.
  • Sélectionner du blanc dans Color Picker en passant le curseur de droite du noir au blanc.
  • Sélectionner la texture des bords (Bords_texture pour ce tuto) dans l'éditeur d'image et dans la vue 3D (voir l'image Texture Paint).
  • Peindre le bord comme dans le test avec la couleur. Cette fois, il faut tapoter pour appliquer des plages de textures sur les bords, en veillant à varier la taille du pinceau pour éviter que le motif ne se répète trop. Se placer bien en face de la partie à peindre. Ici comme c'est un carré, peindre chaque côté l'un après l'autre en utilisant les touche du pavé numérique NUM 3, CTRL + NUM 3 , NUM 1 et CTRL + NUM 1 pour se placer.
  • Enregistrer la texture depuis le menu Image > Save As de l'éditeur d'images. Préférer un format jpg.

Peindre le plateau du terrain

  • 🏗️

Exporter et importer le terrain

Exporter le terrain au format Collada

  • 🏗️

Importer le terrain et les textures dans OpenSim

  • 🏗️

Installer le terrain dans OpenSim

Appliquer les textures sur le mesh

  • 🏗️

Placer le terrain

  • 🏗️

Interêt d'utiliser un mesh

  • 🏗️

Problèmes possibles

  • 🏗️