Blender

Introduction

Blender is a free and open source 3D creation suite. It supports the entirety of the 3D pipeline—modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video editing and game creation.

Tutoriel général

Même si d’innombrables ressources sont disponibles sur le web pour apprendre à utiliser Blender, voici un tutoriel rapide pour illustrer les fonctionnalités principales dans ce cas d’application.

Interaction avec WOLF

La principale utilisation de Blender avec WOLF est la modification de modèles numériques de terrain (MNT) ou de surface (MNS) afin de générer des scénarios d’aménagement.

Shader

L’utilisation de shaders dans Blender permet de visualiser les maillages de manière plus réaliste ou du moins plus contrastée.

L’objectif n’est pas ici de faire un exposé détaillé des fonctionnalités des shaders dans Blender. Il existe de nombreuses ressources sur le sujet (exemple).

Néanmoins, voici un shader simple qui permet de visualiser un MNT en fonction de l’altitude des points et qui offre un certain paramétrage :

Exemple de shader
Le shader est composé de différents noeuds :
  • “Texture coordinate” : récupère les coordonnées de texture de l’objet

  • “Separate XYZ” : sépare les coordonnées en X, Y et Z

  • “Map Range” : permet de normaliser les valeurs de Z pour les adapter à la rampe de couleur qui attend des valeurs entre 0 et 1

  • “Color Ramp” : permet de définir une rampe de couleur (N&B par défaut)

  • “Principled BSDF” : shader de base de Blender

  • “Material Output” : sortie du shader

Les liaisons entre les différentes composantes sont:
  • Texture coordinate (Object) -> Separate XYZ (Vector)

  • Separate XYZ (Z) -> Map Range (Value)

  • Map Range (Result) -> Color Ramp (Fac)

  • Color Ramp (Color) -> Principled BSDF (Base Color)

  • Principled BSDF (BSDF) -> Material Output (Surface)

Le “Map Range” dispose en outre de deux paramètres “From Min” et “From Max” qui permettent de définir les valeurs minimales et maximales de Z dans le MNT. Les valeurs inférieures et supérieures du range seront associées aux couleurs extrêmes de la Color Ramp.

Exemple de coloration d'un MNT Exemple de coloration d'un MNT

Afin que les couleurs soient visibles, il est nécessaire de passer en mode “Material Preview” ou “Rendered” dans la fenêtre de visualisation.

Mode de visualisation

Visualisation

Blender peut également être utilisé pour générer des rendus de scénarios d’aménagement en y incorporant par exemple des lumières et toute autre animation.

Ceci sort du cadre de l’utilisation de WOLF mais peut être intéressant pour des présentations ou des rapports.

Tablette graphique

Il est tout à fait possible d’utiliser une tablette graphique avec Blender pour sculpter des MNT.

Ce mode de travail est plus intuitif et permet de réaliser des modifications plus réalistes que des triangulations avec interpolation linéaire. Il peut bien entendu être utilisé en complément d’une première modification par cette approche.

Aucune contrainte n’existe sur la marque ou le modèle de la tablette graphique. Il est simplement nécessaire de disposer des pilotes adéquats.

Si vous souhaitez utilisez ce type d’appareil mais que vous ne savez pas vers quel modèle vous tourner, nous utilisons le modèle Wacom Intuos Pro M.

Wacom Intuos Pro M

Modifications topographiques

L’interface Python de Wolf est capable de convertir des portions de matrices au format GLTF/GLB après une opération de triangulation.

Ce format de fichier peut être importé dans Blender mais également dans d’autres outils graphiques.

Les outils de sculpting de Blender permettent alors de modifier les MNT importés et d’ensuite les réexporter sous le même format.

Finalement, les triangulations modifiées peuvent être réimportées dans Wolf et interpolées sur le grid de calcul afin de générer des scénarios d’aménagement.

Les étapes nécessaire sont décrites ci-dessous ou téléchargeables ici

Exécuter une interface graphique de Wolf

  • Lancer l’interface graphique de Wolf (wolf.py dans Visual Studio Code au besoin)

Interface graphique de Wolf
  • Allez dans l’onglet “ File “ situé en haut à gauche de la fenêtre

  • Sélectionnez ensuite l’option “ Add array… “

  • Sélectionnez la matrice sur laquelle travailler (format «.bin» par défaut)

Sélection d'un fichier
  • Une petite fenêtre apparaît sur votre écran

  • Entrez une chaîne de texte comme valeur d’ID et appuyez ensuite sur OK

ID
  • Le tronçon apparaît dans une fenêtre nommée “ All data “

Fenêtre "All data"
  • Outils de navigation au sein de la carte topographique :
    • Utilisez la molette de la souris pour zoomer et dézoomer

    • Réalisez un double clic gauche avec votre souris pour centrer la fenêtre sur le pointeur

    • Maintenez le clic gauche de votre souris enfoncé pour vous déplacer dans l’espace

  • Cliquez sur la flèche située à gauche de la case cochée “ Arrays “ en haut à gauche de la fenêtre

  • Une case cochée apparaît juste en dessous, suivie de l’ID entré précédemment

Sélection d'un tronçon
  • Double cliquez + Ctrl sur cette case afin d’ouvrir sa fenêtre de propriétés

Propriétés d'un tronçon
  • Dans la nouvelle fenêtre “ Operations “, cliquez sur la case “Manage vectors” pour gérer les vecteurs associés à la matrice

Gestion des vecteurs
  • Dans la nouvelle fenêtre, cliquez sur la case “ Add zone “ et entrez le nom de zone que vous souhaitez

Ajout d'une zone
  • (optionel) Double cliquez sur le nom de la zone que vous venez de créer à l’instant en haut à gauche de la fenêtre

  • Cliquez ensuite sur la case “ Add vector “ pour ajouter un nouveau vecteur dans la zone et entrez son nom

Ajout d'un vecteur
  • (optionel) Double cliquez sur le nom du vecteur que vous venez d’ajouter dans la zone afin de le sélectionner

  • Appuyez sur la touche “ Add “ à droite de la fenêtre pour créer le contour vectoriel qui sera stocké dans le vecteur sélectionné

  • Positionnez les différents points du contour vectoriel sur la carte topographique en utilisant le clic droit de votre souris

  • Appuyez sur la touche Enter lorsque vous estimez avoir terminé le contour pour mettre fin à l’action

Ajout de points
  • Dans la fenêtre principale, cliquez sur le menu “ File “ situé en haut à gauche de cette dernière

  • Cliquez ensuite sur l’entrée “ Export to gltf…” afin d’enregistrer la portion rectangulaire de la matrice entourée vectoriellement

  • Enregistrez la zone sous le nom et dans le répertoire de votre choix

  • Le format est soit .gltf (format texte) ou .glb (format binaire)

Exportation

Exécuter Blender et import les données

  • Lancez le logiciel Blender version 3.0 ou 4.0 (4.0 recommandée)

Importation
  • Cliquez sur l’onglet “Fichier” en haut à gauche de votre écran

  • Placez votre curseur sur l’option “ Importer “ afin de dévoiler les options d’importation

  • Sélectionnez l’option d’import d’un fichier de type glTF 2.0 (.glb/.gltf)

  • Choisissez le fichier que vous avez précédemment créé

  • Vérifiez que le fichier s’est bien importé dans Blender

Importation

Colorer les données

  • Echelle de couleurs (variante : créer votre propre shader)

  • Cliquez sur l’onglet “Fichier” en haut à gauche de votre écran

  • Cliquez sur l’option “Ajouter”

Ajout d'un shader
  • Sélectionnez le fichier “Echelle de couleur.blend” / “colormap.blend” <_static/blender/colormap.blend>`_

  • Allez dans le dossier “Material”

  • Choisissez le fichier “Dégradé Topographique”

  • Cliquez sur “Append”

Echelle de couleurs
  • Sélectionnez la topographie que vous avez en haut à droite de votre écran

  • Cliquez ensuite sur l’onglet “Propriétés de matériau”

  • Développer le menu “Parcourir les matériaux à lier”

Propriétés de matériau
  • Sélectionnez le matériau “ Dégradé Topographique “

  • Pour faire apparaître le matériau sur la topographie, cliquez sur l’option “ Prévisualisation du matériau “ dans l’onglet ombrage de vue en haut à droite de votre écran

    Prévisualisation du matériau
  • Sélectionner l’espace de “ Modeling “ en haut de votre écran

  • Sélectionnez l’outil “ Ajouter un cube “ dans la colonne d’outils située à gauche de votre écran

  • Maintenez le clic gauche de votre souris pour étendre la zone rectangle rectangulaire, puis relâchez le clic de votre souris afin de pouvoir donner une hauteur à votre rectangle

_images/17_rect.png
  • Vous pouvez ensuite déplacer et ajuster votre rectangle afin qu’il vous indique l’échelle relative au niveau de votre topographie modélisée, à l’aide des divers outils présents dans la barre à gauche de votre écran

Rectangle coloré

Modifications/Scuplting

  • Pour modifier la topographie de manière plus précise, il est parfois utile de changer la résolution du maillage en l’augmentant.

  • Sélectionnez le mode édition (“edit mode”) dans le menu déroulant en haut à gauche.

Mode édition
  • Le logiciel vous montrera l’intégralité du maillage en orange. Si ce n’est pas le cas, sélectionnez votre topographie en haut à droite. (exemple: je veux modifier Mesh_0, il faut cliquer sur le point à gauche du triangle.)

Maillage
  • Si vous ne souhaitez modifier le maillage que dans une zone, définissez-la avec votre curseur et maintenant le clic gauche.

  • Après avoir sélectionné votre zone à modifier, faites un clic droit et choisissez “subdivide”.

Subdivision Subdivision
  • L’opération peut prendre quelques secondes à se réaliser.

  • Vous pouvez réaliser cette opération plusieurs fois.

  • Sélectionnez l’espace de “ Sculpting “ en haut de votre écran

  • De nombreux outils différents sont à votre disposition dans la barre qui se trouve à gauche de votre écran

Sculpting
  • Vous pouvez également modifier les paramètres des outils tels que :

    • Le Rayon

    • La Force

    • La Direction ( + / - )

    • Le Type de Brosse (option Auto-Smooth )

    • L’Atténuation (afin de choisir un profil spécifique)

    • Quelques outils utiles : Dessiner / Argile / Gonfler / Bulles / Adoucir / Aplatir / …

Propriétés de sculpting

Export des modifications

  • Sélectionnez l’onglet “ Fichier “ en haut à gauche de votre écran

  • Placez votre curseur sur l’option “ Exporter “ afin de développer le menu de choix

  • Sélectionner le type de fichier glTF 2.0 ( .glb / .gltf )Enregistrez le fichier dans l’emplacement de votre choix et nommez-le

Exportation

Import dans l’interface WOLF…

  • Allez dans l’onglet “ File “ situé en haut à gauche de la fenêtre

  • Sélectionnez l’option “ Import from gltf “

  • Sélectionner le fichier .gltf que vous souhaitez importer

  • Une seconde fenêtre va directement s’ouvrir en vous demandant de sélectionner le fichier de position associé à la topographie sélectionnée précédemment ( .pos , stocké au même endroit que votre fichier .gltf )

  • Une dernière fenêtre d’option vous permettra de choisir l’algorithme d’interpolation

  • Attendez que l’interpolation s’exécute

  • La figure se mettra à jour automatiquement

Importation

Canal guide

Le tutoriel est également disponible au format pdf .

Exécuter une interface

  • Exécuter le programme Wolf.py (éventuellement depuis Visual Studio Code si nécessaire)

  • Une fenêtre de commandes apparaît sur votre écran

Interface graphique de Wolf
  • Allez dans l’onglet “ File “ situé en haut à gauche de la fenêtre

  • Sélectionnez ensuite l’option “ Add array… “

  • Sélectionnez le tronçon topographique souhaité sous son format “ .bin “

Sélection d'un fichier
  • Une petite fenêtre apparaît sur votre écran

  • Entrez une valeur d’ID et appuyez ensuite sur OK

ID
  • Le tronçon apparaît ensuite dans une fenêtre nommée “ All data “

Fenêtre "All data"
  • Outils de navigation au sein de la carte topographique :

    • Utilisez la molette de la souris pour zoomer et dézoomer

    • Réalisez un double clic gauche avec votre souris pour centrer la fenêtre sur le pointeur

    • Maintenez le clic gauche de votre souris enfoncé pour vous déplacer dans l’espace

Création de données vectorielles

  • Allez dans l’onglet “ File “ situé en haut à gauche de la fenêtre

  • Cliquez sur le bouton “ Create Vectors… “

  • Une petite fenêtre apparaît sur votre écran

  • Entrez une valeur d’ID et appuyez ensuite sur OK

  • Cliquez sur la flèche située à gauche de la case cochée “ Vectors “ en haut à gauche de la fenêtre

  • Une case cochée apparaît juste en dessous, suivie de l’ID entrée précédemment

  • Double cliquez + Ctrl sur cette case afin d’ouvrir une nouvelle fenêtre de commandes permettant de gérer les vecteurs

  • Dans la nouvelle fenêtre, cliquez sur la case “ Add zone “ et entrez le nom de zone que vous souhaitez

  • (optionnel) Double cliquez sur le nom de la zone que vous venez de créer à l’instant en haut à gauche de la fenêtre

  • Cliquez ensuite sur la case “ Add vector “ pour ajouter un nouveau vecteur dans la zone et entrez son nom

  • (optionnel) Double cliquez sur le nom du vecteur que vous venez d’ajouter dans la zone afin de le sélectionner

Ajout de parallèles :

  • Appuyez sur la touche “ Add and parallel “ à droite de la fenêtre pour créer le vecteur central de votre canal guide

  • Positionnez les points de votre canal en cliquant à l’aide du clic droit de votre souris

  • (optionnel) si la touche CTRL est maintenue enfoncée au moment du clic, la coordonnée Z du point sera automatiquement déterminée par la valeur de la matrice active à cet endroit

  • Dès que vous aurez placé votre deuxième point, deux lignes parallèles à votre ligne directrice vont également apparaître sur votre écran, indiquant chacune les deux berges latérales de votre canal

  • Appuyez sur la touche “ Enter “ pour clôturer le positionnement de vos points

Canal guide

Choix dynamique de la largeur

  • Une fois l’ensemble des points de votre ligne directrice placés ou pendant le choix des points, vous pouvez choisir la largeur de votre canal guide, pour cela deux méthodes sont possibles :

    • Maintenez la touche “ Shift “ enfoncée et utilisez la roulette de votre souris pour augmenter ou diminuer la largeur du canal à votre guise

    • Appuyez simultanément sur les touches “ Ctrl + Shift + molette de la souris “ afin de faire apparaître une fenêtre de commande dans laquelle vous pourrez rentrer la valeur voulue pour la demi-largeur de votre canal

    • Une fois cette opération réalisée, vérifiez que les trois vecteurs de votre fenêtre de commande correspondent bien aux valeurs que vous souhaitez

Choix de la largeur Largeur modifiée

Choix des altitudes

  • Dans le fenêtre de propriétés des vecteurs, appuyez sur le bouton “ Evaluate s “ afin de déterminer les distances entre vos points de ligne directrice, ces valeurs permettront juste après d’interpoler les valeurs de fond de votre canal guide

  • Une fenêtre de commandes apparaît, sélectionner l’option “ 2D “ et appuyez sur OK

Choix du mode
  • Appuyez à présent sur le bouton “ Interpolate coords “ afin d’interpoler les valeurs de fond de votre canal (toute valeur “-99999” ou “vide” sera remplacée)

  • Vous pouvez bien entendu modifier les valeurs de fond de votre canal guide manuellement

    • sur l’axe central ou sur chacune des paralleles

    • si seul l’axe central est modifié, il sera proposé ultérieurement de modifier automatiquement les valeurs pour les paralleles afin de générer un fond plat

Interpolation
  • Cliquez sur “ Updates coordinates “ afin de sauvegarder l’interpolation

  • Finalement sauvegarder votre canal guide en appuyant sur “ Create bin from 3 vectors “ en bas à gauche de la fenêtre de gestion des vecteurs

  • Une nouvelle fenêtre apparaît, sélectionnez l’option “ Oui “ si vous souhaitez que le bas des berges latérales soit au même niveau que le fond de votre canal. Sinon cliquez sur “ Non “

  • Une fenêtre apparaît encore, rentrez-y la profondeur que vous souhaitez pour votre canal en cm et cliquez sur OK

Profondeur
  • Il ne vous reste plus qu’à enregistrer votre fichier à l’emplacement de votre choix et avec le nom adéquat

Utilisation dans Blender

  • Créez un contour vectoriel entourant la zone dans laquelle vous venez de créer votre canal. Pour cela suivez les étapes .. Modifications topographiques

  • Importez en premier la matrice topographique dans Blender

  • Importez ensuite le fichier contenant votre canal guide

  • Le canal doit se positionner automatiquement au bon endroit dans votre morceau de topographie

Canal guide gris
  • Vous pouvez ajouter une couleur à votre canal guide afin d’augmenter le contraste avec la topographie

  • Vous pouvez désormais modifier la topographie en suivant les limites imposées par votre canal guide

Canal guide coloré