Cette dernière partie du cours donne quelques pistes pour aller plus loin dans différentes directions : optimisation et approfondissement du flux de production, suggestions de logiciels complémentaires, tutoriaux et liens utiles, etc.

Les logiciels :

Attention, le but n'est surtout pas de recourir au maximum de logiciels, mais d'utiliser les plus efficaces pour le résultat désiré. Actuellement, il n'existe pas un logiciel capable de tout faire - et de le faire bien - et c'est pour cette raison que le cours en a abordé un nombre important. Mais l'objectif à ne pas perdre de vue est l'efficience. Dans la perspective d'optimiser au mieux son temps (et le prix des licences), certaines associations fonctionnent mieux que d'autres : un logiciel efficace de photogrammétrie (RealityCapture ou PhotoScan) associé à un logiciel de 3D performant (ZBrush ou Maya) permettent de gérer toute la partie maillage 3D et mapping. Substance painter et Substance Designer a eux deux permettent de faire entièrement le baking, la retouche, la création des textures PBR et la visualisation... Malgré tout, quelques logiciels permettent d'aller plus loin - ceux présentés sont gratuits pour la plupart, inutile de se priver !

ExifTool : Un logiciel gratuit qui permet de modifier les données EXIF des prises de vue. Il peut être complété par ExifToolGUI si on préfére les fenêtres et les boutons plutôt que les lignes de commande. Il est très utile pour "nettoyer" et formater les fichiers photos avant de les transmettre à un logiciel de photogrammétrie.

Color Checker Passport : ce logiciel édité par X-Rite est fait pour calibrer les images photographiées - c'est-à-dire à la fois les conditions lumineuses et le comportement de l'appareil DSRL servant à la prise de vue. Indispensable pour calibrer correctement ses images, mais nécessite de disposer d'une mire de calibration (ou Macbeth, du nom de la société qui l'a initialement commercialisé).

TexTools : un excellent script (gratuit) pour 3Dsmax, qui donne une trousse à outil très complète pour la gestion des UV et du mapping. A voir également, le script Smart Stitch

MeshLab : Ce logiciel, gratuit et Open Source mérite un détour car il dispose de fonctions très efficaces pour inspecter et réparer les HighPoly problématiques issus des logiciels de photogrammétrie. Il complète très bien un logiciel de retopologie 3D mais ne travaille que sur des maillages triangulaires (typiquement, le HighPoly calculé par un logiciel de photogrammétrie) - il n'est pas conseillé pour les maillages à animer.

3D Coat : Peu connu et pourtant très efficace, 3D Coat séduira les allergiques à l'interface de ZBrush car il offre une interface "Classique" (où un objet est un objet, et pas un outil !). Attention cependant, ce logiciel fournit toute une série de modifications et de transformations basées sur la conversion du maillage en voxels - cette conversion doit être évitée car elle ne convient pas au flux de production.

Les différents terrains d'application :

Le flux de production présenté dans ce cours concerne la reproduction réaliste d'objets, mais il existe bien d'autres terrains d'application basés sur la photogrammétrie : conservation d’œuvres, micro 3D, patrimoine, digital humanities, analyse esthétique, reconstruction de scènes cinématographiques, géologie et topographie, VFX, design, etc. Le flux de production doit être modifié et/ou approfondit à certaines étapes pour optimiser le résultat en fonction du type de reconstruction :

Exemple texture environementale PBRTextures environnementales PBR répétables : Elles sont beaucoup utilisés dans les jeux et doivent donc se conformer à un certain nombre d'impératifs (poids des textures, possibilité de les répéter, etc.). Les étapes du flux de production qui doivent être modifiées sont :

  • La prise de vue : pour réaliser une texture répétable, la phase de prise diffère sensiblement, d'une part parce qu'elle doit être faite à la lumière naturelle, et d'autre part parce qu'elle doit être très méthodique - impossible de refaire des photos ultérieurement si la première prise de vue n'a pas été faite correctement.
  • La reconstruction : pour la reconstruction de surface relativement planes, Photoscan est d'avantage conseillé que RealityCapture
  • Les jointures : une partie du travail avant le baking consiste à nettoyer la texture diffuse haute résolution pour éviter que n'apparaisse des effets de couture lorsque la texture est répétée (on parle de textures "seamless"). Substance Painter est particulièrement adapté pour cette tâche.
  • Le LowPoly et le mapping : il sont bien plus simples que pour un objet puisque la texture est appliquée sur une simple plaque 3D. Il n'y a donc pas besoin d'un logiciel de 3D complexe pour ces deux parties.

Architectures : la reconstruction de bâtiments et d'infrastructures en 3D est un domaine d'application de la photogrammétrie qui concerne aussi bien la visualisation de projets architecturaux, la restauration et la conservation, les VFX et les scènes numériques. L'échelle souvent importante nécessite des modifications du flux de production :

Exemple architecture

  • La prise de vue : le nombre de photos est souvent bien plus élevé que pour la reproduction d'objet et nécessite parfois le recourt à un drone pour les parties inaccessibles. Là aussi, il est essentiel d'être très méthodique car la prise de vue doit être assurée sous les mêmes conditions lumineuses pour optimiser la reconstruction. La prise de vue peut être complétée par des relevés laser pour augmenter la précision du résultat.
  • La reconstruction : la reconstruction d'éléments de grande taille dans RealityCapture nécessite de plonger nettement plus avant dans les options du logiciel, et en particulier de maîtriser les Composants et les Points de contrôle. Étant donnée la quantité importantes de photos à traiter il est nécessaire de disposer de ressources de calcul élevées - voir par exemple ce projet de reconstruction de la ville Banska Stiavnica qui a nécessité plus de 100.000 photos !

Topographie : la reconstruction de terrains est elle aussi un domaine d'application important de la photogrammétrie qui concerne aussi bien l'aménagement du territoire, la géologie, la création de décors virtuels ou la reconstitution historique. Elle se caractérise par une étape de prise de vue entièrement faite par drone et des logiciels parfois très différents de ceux détaillés dans le cours.

  • La prise de vue : pour recréer un terrain, il est nécessaire de recourir à une prise de vue par drone, si possible en prenant les photos à différentes altitudes pour optimiser la reconstruction.
  • La reconstruction : comme pour les textures environnementales, il est préférable d'utiliser Photoscan plutôt que RealityCapture. Photoscan n'étant pas aussi optimisé que RealityCapture pour le traitement de très larges quantité de photo, il est nécessaire de disposer d'une grande quantité de mémoire vive (32 Go est un minimum)
  • L'exportation et le traitement : En fonction de l'utilisation qui sera faite de la reconstruction 3D, les étapes et les logiciels peuvent suivre le même flux de production que celui détaillé pour les objets (décors 3D, VFX, etc.) ou au contraire changer drastiquement. Pour l'aménagement urbain par exemple, Civil 3D est très répandu, la précision de la géométrie étant beaucoup plus importante que le réalisme du rendu 3D.

Exemple topographie

Les étapes du flux de production à approfondir :

Le cours ne présente pas toutes les étapes dans les moindre détails. Voici quelques pistes à explorer pour approfondir certaines étapes du flux de production qui peuvent être améliorées :

La prise de vue : les deux aspects les plus importants de la prise de vue sont d'une part une méthodologie qui permette de n'oublier aucune partie de l'objet et qui assure un taux de recouvrement de 90% entre les photos ; et d'autre part la mobilisation de toutes les techniques et ressources qui permettent d'obtenir la plus grande netteté possible (Qualité de la prise de vue, des optiques et du matériel, focus stacking, hyperfocale, etc.)

Composants et point de contrôle dans RealityCapture : Savoir utiliser ces deux fonctions avancées de RealityCapture permet de reconstruire des éléments plus complexes et/ou que le logiciel a du mal à assembler.

Améliorer le HighPoly : il est très fréquent que le modèle haute définition calculé par le logiciel de photogrammétrie n'ait pas un maillage correct par rapport au modèle réel et il est souvent préférable de le retoucher dans un logiciel 3D pour l'améliorer. RealityCapture permet d'exporter le modèle brut, puis de le réimporter pour calculer la texture haute définition.

Les groupes de faces : savoir utiliser les groupes de faces, aussi bien pour le HighPoly que pour le LowPoly est fondamental car elles permettent d'optimiser le maillage du LowPoly, de gérer les matériaux multiples et de simplifier l'étape du mapping.

Le contrôle du résultat (une étape plus loin) : Les logiciels de prévisualisation 3D comme Marmoset ou Knald permettent dans une certaine mesure de vérifier le rendu 3D, mais ne garantissent pas que le résultat qu'ils affichent sera identique dans Unity ou Unreal Engine. Il faut systématiquement vérifier dans ces deux logiciels la qualité finale du rendu 3D à trois niveaux : l'échelle, les matériaux et la lumière. 

Les liens utiles :

Pour finir, voici quelques liens portant à la fois sur la théorie générale de la photogrammétrie et du rendu PBR, et des tutoriaux sur des fonctions utiles des logiciels abordés.

- Unity Photogrammetry workflow : un excellent document, à lire intégralement (la partie de ce cours sur l'outil de Delighting s'en est largement inspiré) !

- C'est quoi un mauvais maillage 3D ? Il y a de nombreuses raisons pour lesquelles un maillage n'est pas valide, c'est-à-dire qu'il présentera des problèmes pour le mapping ou le rendu. Ce lien passe en revue tous les problèmes possibles (et explique comment les régler avec Maya)

- Guide PBR d'Allegorithmic : pour tout comprendre de la théorie et de la pratique du rendu PBR, Allegorithmic publie ces deux documents très bien faits. A lire absolument.

- Conseils pour la prise de vue : ce lien donne quelques détails supplémentaire sur les bonnes pratiques de la prise de vue en photogrammétrie. A voir également, cette interview qui décrit la méthodologie de prise de vue pour un intérieur :

- On trouvera dans le document réalisé par Autodesk et téléchargeable à cette adresse des développements sur l'utilisation de RealityCapture dans le Design et l'industrie de la construction. A consulter également, ce document qui détaille le flux de production de la photogrammétrie pour Unity.

- Une série de trois vidéos pour apprendre à nettoyer et réparer un maillage 3D avec 3D Coat :

- 10 astuces et de nombreux conseils pertinents pour Substance Painter. Il ne faut pas aussi oublier de visiter Substance Academy qui propose de nombreux tutoriaux vidéos.

- Une vidéo sur les bases de la retopologie avec ZBrush :

- Deux autres sur la retopologie avec Maya :

- Et un dernier pour 3Dsmax :

- Un tutoriel pour 3Dsmax pour apprendre à maîtriser le modificateur UV Unwrap (et quelques scripts pour se faciliter la vie) :

- Une série de trois tutoriaux pour maîtriser le mapping dans ZBrush (à voir en particulier, le volume 2 consacré aux polygroup)

- Une introduction à l'utilisation de Knald :

- Pour finir, un premier lien décrivant l'utilisation du rendu PBR avec Unity, un second concernant la validation des matériaux réaliste dans Unity et un dernier lien sur les matériaux réalistes dans l'Unreal Engine.

Modifié le: lundi 22 juillet 2019, 15:41