Informatique graphique

La petite histoire d’une technique de création 3D très novatrice

Date:
Mis à jour le 21/11/2023
La conférence Siggraph, rendez-vous incontournable des acteurs du graphisme 3D, fête cette année ses 50 ans. À cette occasion, le deuxième tome de Seminal Graphics Papers vient d’être publié, 25 ans après le premier... Cet ouvrage recense les avancées majeures du secteur. L’un des 88 articles distingués est cosigné par trois chercheurs du Centre Inria de l'Université de Lorraine. Son thème : le plaquage de texture automatique, une technique très utilisée en animation 3D. Bruno Lévy, directeur de recherche chez Inria, à l’origine de ce procédé, nous conte ici cette belle aventure.
Exemple de plaquage de texture - l’objet 3D est découpé en plusieurs morceaux qui sont mis à plat
© Blender Foundation / Inria

Le plaquage de texture, c’est quoi ?

Le plus souvent, les personnages et les décors d’un film en images de synthèse, des effets spéciaux de cinéma ou des jeux vidéo, sont constitués initialement de petits polygones. Le plaquage de texture permet d’habiller ces polygones par des images. Cette méthode consiste à découper un objet 3D en plusieurs morceaux que l’on met ensuite à plat. L’artiste peut ainsi peindre l’image en 2D, appelée "texture". Celle-ci peut être affichée en 3D grâce aux cartes graphiques.

La technique a été mise au point dès 1975 par Edwin Catmull pour des surfaces très simples, décrites par une équation, dont le dépliage 2D est connu par avance. En revanche, pour les surfaces à base de polygones, trouver un "bon dépliage 2D" demeurait un problème ouvert dans les années 2000.

LSCM - Exemple de plaquage de texture : objet 3D découpés en plusieurs morceaux
© Blender Studio
Exemple de plaquage de texture : l’objet 3D est découpé en plusieurs morceaux qui sont mis à plat puis peints en 2D
© Blender Foundation
Exemple de plaquage de texture : l’objet 3D est découpé en plusieurs morceaux qui sont mis à plat (figure du haut) puis peints en 2D (figure du bas). Source : https://studio.blender.org/films/big-buck-bunny/gallery/

Premier défi : passer des géosciences à l’infographie

Comment débute mon aventure dans ce domaine ? Lors de ma thèse en géosciences, je me penche sur le dépliage et la génération de maillages pour la modélisation du sous-sol, fondée sur la méthode DSI de Jean-Laurent Mallet, mon directeur de thèse. Ensemble, nous développons une technique pour générer des grilles 3D pour la simulation d’écoulement dans le sous-sol. Très motivé par le domaine du "computer graphics", j’ai l’idée de l’appliquer au problème du plaquage de texture. En 1998, je présente avec Jean-Laurent Mallet une première méthode à Siggraph, le séminaire mondial de référence dans le domaine, organisé alors à Orlando, en Floride.

Cet événement représente beaucoup pour moi. Encore étudiant en thèse à l’époque, c’est ma première conférence, devant 10 000 personnes, dans une salle grande comme un hall de gare, ma tête affichée en gros plan sur un écran de 2 mètres sur 2. La chaleur est terrible et du fait de l’humidité dans l’air, il y a de la condensation sur les diapositives (que l’on utilise encore à l’époque). Celles-ci apparaissent un peu floues, ce qui me stresse sur le coup. Puis, je réalise que dans cette salle immense, seuls les deux premiers rangs s’en sont rendu compte…   

Une étape décisive : des équations pour automatiser le procédé

Par la suite, je continue à travailler sur le sujet et développe un nouveau solveur pour accélérer les calculs. En 2001, je publie une extension permettant de corriger "à la main" l’association entre l’objet 3D et l’image. La même année, j’ai l’idée d’appliquer certaines méthodes mathématiques (équations de Cauchy-Riemann) pour trouver automatiquement des bonnes coordonnées de texture.

Lors d’un trajet en train Nancy-Paris qui dure alors quatre heures (il n’y a pas encore le TGV), je travaille sur les mathématiques à l’aller et le programme informatique au retour. Le procédé fonctionne au-delà de mes espérances ; je pousse même un cri de joie dans le wagon et les autres passagers me regardent un peu bizarrement...Grâce aux équations de Cauchy-Riemann, la méthode peut remplacer des heures de travail manuel très fastidieux par un simple appui sur un bouton !

Un article collectif sur le plaquage de texture automatique

À cette époque, je discute avec Jérôme Maillot, alors employé par la société Alias|Wavefront, qui développe Maya, l’un des principaux logiciels de création 3D. Lui aussi travaille sur le plaquage de texture automatique. Je lui rends visite à Toronto. Il s’avère que nous avions développé indépendamment la même équation ! Nous décidons alors d’écrire un article ensemble, rejoints par plusieurs collègues d’Inria. Ainsi, Nicolas Ray travaille sur les aspects de découpage de maillage et d’organisation des morceaux dans l’image afin de minimiser l’espace perdu, et Sylvain Petitjean étudie les propriétés mathématiques de la méthode (qui met en jeu des matrices avec des nombres complexes si vous voulez les détails croustillants !).

L’article est publié en 2002 à Siggraph et je vais le présenter. À cause de la climatisation de l’avion, j’attrape un rhume qui se transforme en pneumopathie. Je fais donc mon exposé avec plus de 38 de fièvre. J’ai failli mourir sur scène comme Molière... Et je me suis marié juste après !

LSCM - Plaquage de texture avec plis
© Inria / Université de Lorraine / Stanford University (http://graphics.stanford.edu/data/3Dscanrep/)
Quand on emballe un chocolat dans du papier, c’est du plaquage de texture mais avec de nombreux plis... En infographie, pour éviter ces plis, on découpe la surface en petits morceaux, plus faciles à déplier. Et grâce aux équations de Cauchy-Riemann, un carré sur l’image va correspondre à un carré sur la surface de l’objet 3D. Le lapin de l’image ci-dessus (qui est la première image de notre article de 2002) est le fameux "Stanford Bunny", l’un des tout premiers objets scannés en 3D.

Le résultat : un procédé open source toujours très utilisé 

Nous songeons à breveter la méthode, mais Alias|Wavefront ne sait pas alors gérer des brevets en copropriété. Par conséquent, je diffuse en open source le prototype logiciel dénommé LSCM (voir encadré). En fait, c’est une très bonne décision ! Rapidement, je suis contacté par Brecht Van Lommel, l’un des développeurs de Blender, logiciel de création 3D open source. Pour lui, je conçois une version de LSCM et de son solveur numérique en C (OpenNL), qui peut très facilement être intégré à Blender.

Très vite, la fonction "plaquage de texture automatique" devient standard dans le domaine de la création 3D et les principaux logiciels ajoutent un bouton "LSCM" à leur outil. Aujourd’hui, la technique (ou des variantes) est encore très largement utilisée, dans le cinéma et dans les jeux vidéo.

Plaquages de texture associant l’image d’un animal à un visage humain en 3D
© Inria / Université de Lorraine / SIPI Image Database - University of Southern California (https://sipi.usc.edu/database/)
Plaquages de texture associant l’image d’un animal à un visage humain en 3D

Que désigne les LSCM ?

En anglais, LSCM signifie "Least Squares ConformalMaps", soit en français "cartes conformes au sens des moindres carrés", à savoir :

  • carte :  une représentation 2D d’un "terrain" ou d’un objet 3D
  • conforme :  la carte préserve la forme de l’image. Par exemple, un carré sur l’image devient un carré sur l’objet (grâce aux fameuses équations de Cauchy-Riemann).
  • au sens des moindres carrés : comme on ne peut pas exactement assurer le caractère conforme du plaquage de texture, on minimise l’erreur (ou plus exactement, la somme des carrés des erreurs).

Ce nom est difficile à retenir, mais comme le "bouton LSCM" lancé par le logiciel Blender a rencontré un grand succès, les autres éditeurs de logiciels ont gardé cette appellation par la suite. Aujourd’hui, on privilégie plutôt le terme de "dépliage UV" ou "UV unwrapping" en anglais (UV désignant les deux coordonnées de la carte en 2D).

L’implantation de LSCM est disponible dans la bibliothèque open source Geogram et dans le logiciel Graphite.

En savoir plus