Voici un tutoriel de base sur l’utilisation de Instant Meshes, un programme gratuit et open source qui permet d’effectuer une rétopologie et de réduire le nombre de polygones des modèles 3D.
La version vidéo de ce tutoriel n’est actuellement pas disponible dans cette langue.
Transcription de la vidéo
Bonjour à tous. Voici un tutoriel de base sur l’utilisation de Instant Meshes, un programme gratuit et open source qui permet d’effectuer une rétopologie et de réduire le nombre de polygones des modèles 3D. L’une de ses fonctionnalités les plus intéressantes est la possibilité de définir manuellement certains flux de topologie afin de guider la création de topologies low poly.
Pour vous montrer un exemple pratique, j’utiliserai un modèle 3D obtenu par photogrammétrie. J’ai reconstruit ce modèle avec Meshroom, en utilisant le même flux de travail que j’ai expliqué dans ma série de base sur la photogrammétrie sur Turntable. Le résultat est un modèle avec un nombre élevé de sommets et une topologie médiocre.

Instant Meshes peut être téléchargé soit sous forme de code source à compiler, soit sous forme d’exécutable précompilé via le lien dans la description. C’est un programme autonome qui accepte les modèles au format OBJ ou PLY.
J’ai légèrement nettoyé le modèle obtenu par photogrammétrie. Je l’exporte maintenant au format OBJ afin de pouvoir l’importer dans Instant Meshes.

Après avoir lancé Instant Meshes, cliquez sur le bouton Open Mesh pour importer le modèle 3D au format OBJ. Vous pouvez faire pivoter la vue 3D avec le bouton gauche de la souris. Le zoom s’effectue avec la molette de la souris. Vous pouvez déplacer la vue avec le bouton droit de la souris.

Dans le panneau Advanced, plusieurs modes d’affichage sont disponibles. Ils permettent par exemple de visualiser le modèle en mode Wireframe, d’afficher les identifiants numériques des sommets et des faces, et plus encore. Un autre bouton en haut est Remesh As, où nous pouvons spécifier le type de géométrie souhaité en sortie. L’option par défaut est Quads, ce qui signifie que seules des faces quadrangulaires seront générées, et je vais la conserver ainsi.

Le paramètre Target Vertex Count porte un nom quelque peu trompeur, car il ne correspond pas au nombre de sommets que possédera le maillage final. Il s’agit en réalité d’un paramètre indicatif pour la densité de la grille qui sera générée. Il sert de cible idéale pour l’algorithme, mais ne constitue ni une limite stricte ni un résultat garanti. Instant Meshes proposera une valeur à ne pas dépasser, car le maillage d’origine pourrait ne pas avoir une résolution suffisante. Ce qui nous intéresse principalement est une rétopologie avec une bonne simplification, donc nous pourrions vouloir réduire la valeur suggérée par Instant Meshes. Le programme n’est donc pas idéal si nous avons besoin d’un nombre exact de polygones, mais nous pouvons toujours simplifier la géométrie par la suite dans Blender ou dans un autre logiciel.

Nous pouvons maintenant cliquer sur le premier bouton Solve, situé dans la section Orientation Field, afin de laisser Instant Meshes calculer des flux de topologie initiaux. Après avoir cliqué sur Solve, les flux initiaux apparaîtront sur l’objet. Dans certains cas, ils fonctionneront correctement, par exemple sur les jambes ou d’autres parties allongées, mais dans d’autres cas ils devront être ajustés afin d’obtenir des topologies différentes.

Pour inspecter et modifier la topologie initiale, dans la section Orientation Field nous disposons de trois outils permettant d’ajuster le flux dans certaines zones. Dans cette même section, un champ appelé Singularities indique le nombre de points critiques où le flux d’orientation change brusquement. Ces singularités entraînent souvent des sommets connectés à 3, 5 arêtes ou davantage.

Utilisons le premier outil, appelé Comb, qui permet de définir des flux personnalisés en cliquant et en faisant glisser la souris sur la géométrie avec le bouton gauche. Pour faire pivoter la vue, il faut temporairement désactiver l’outil Comb puis le réactiver. Les lignes peuvent être supprimées en cliquant sur l’icône X située à côté de chaque nouvelle ligne. Remarquez comment chaque trait influence le nombre de Singularities, parfois en améliorant le résultat et parfois en l’aggravant.

Pour visualiser les Singularities du Orientation Field, nous pouvons activer leur affichage dans l’onglet Advanced que nous avons brièvement examiné auparavant. Vous pouvez également ajuster la taille des icônes correspondant à ces singularités. Une autre façon de visualiser les singularités consiste à activer le bouton Attractor, représenté par une icône en forme d’aimant. Dans tous les cas, nous pouvons essayer de redéfinir les lignes de flux avec l’outil Comb. Le flux est recalculé automatiquement, donc cliquer à nouveau sur Solve ne devrait pas produire de changements visibles. Gardez à l’esprit que certaines singularités sont presque impossibles à éliminer, par exemple celles situées sur les visages ou, dans le cas du petit loup de cette statue, près des oreilles. Par exemple, j’ai essayé de définir un nouveau flux de topologie pour corriger un problème, mais j’ai en réalité introduit deux nouvelles singularités.

Quoi qu’il en soit, le Orientation Field constitue la première des deux étapes. La seconde est le Position Field, où nous traitons les zones dans lesquelles la topologie quadrangulaire présente des discontinuités dans la distribution des sommets. Cliquons sur le bouton Solve dans la section Position Field pour y accéder immédiatement. Comme vous pouvez le voir, nous avons maintenant les lignes de la nouvelle topologie, générées à partir des flux définis dans le Orientation Field. Cependant, même ici certaines zones problématiques sont clairement visibles. Elles sont également appelées Singularities.

Il est facile de repérer certaines singularités du Position Field, car elles apparaissent souvent dans les zones où une ligne se termine brusquement et converge vers un autre flux d’arêtes. Vous pouvez afficher les Singularities du Position Field en activant la case correspondante dans l’onglet Advanced.

Dans ce cas également, nous disposons d’un outil Comb qui permet de modifier légèrement le flux afin de tenter de réduire les singularités. Cependant, certaines singularités ne peuvent tout simplement pas être supprimées. Au mieux, elles peuvent être rapprochées les unes des autres ou déplacées vers des zones moins visibles ou moins problématiques, comme des surfaces planes ou des parties du maillage qui ne nécessiteront pas d’animation.

Une fois les modifications terminées, il ne reste plus qu’à exporter le résultat. En cliquant sur Export Mesh, nous pouvons définir certaines options pour la géométrie de sortie, comme Pure Quad Mesh pour générer une géométrie composée uniquement de faces quadrangulaires, et appliquer éventuellement quelques itérations de lissage. Ensuite, nous devons cliquer sur Extract Mesh, ce qui permettra à Instant Meshes de générer la géométrie finale à exporter, avec un aperçu dans la vue 3D. Enfin, cliquez sur Save pour spécifier le nom et l’emplacement du fichier OBJ. Assurez-vous d’ajouter manuellement l’extension de fichier OBJ, sinon Instant Meshes n’enregistrera pas le fichier de sortie.

Nous pouvons maintenant importer le fichier OBJ dans Blender et le comparer avec la version originale high poly. Nous remarquerons immédiatement que le nombre de sommets est bien plus élevé que la valeur définie dans le champ Target Vertex Count de Instant Meshes. Comme je l’ai mentionné précédemment, ce paramètre sert davantage de référence de densité que d’objectif précis. La topologie, en revanche, est beaucoup plus propre que celle du modèle d’origine et nous permettra de simplifier ou de modifier le modèle plus facilement. L’apparence est très facettée, à la fois parce que toutes les arêtes sont marquées comme Sharp Edges, et parce que l’option Cavity est activée. Pour obtenir un rendu plus lisse, je supprime les Sharp Edges depuis le menu Edges en Edit Mode et je désactive l’option Cavity. Le chevauchement avec le modèle high poly est satisfaisant, ce qui signifie que nous pourrons facilement effectuer un bake de la Base Color et de la Normal Map à partir de la version high poly, mais ce sera le sujet d’un autre tutoriel.
