Aujourd’hui la demande de contenus 3D devient de plus en plus importante, que ce soit pour l’industrie Media et Divertissement (films, séries, VFX, jeux vidéo,…), la conception industrielle, l’e-commerce, le design, l’architecture et bientôt le Metaverse ;)
Autodesk et de nombreux éditeurs proposent des outils pour la création graphique 3D pouvant répondre à toute ou partie de la chaine de production (pipeline).
Le processus de création 3D est en constante évolution, notamment depuis l’arrivée de solutions de rendu 3D temps réel et / ou collaboratives qui permettent de s’affranchir des pipelines de production linéaires classiques – un peu comme le montage vidéo non linéaire numérique a révolutionné le montage vidéo traditionnel dans les années 90 (je sais c’est loin).
Le pipeline de production 3D fait appel à plusieurs métiers, compétences et logiciels. Une fois le scénario, le storyboard et le design établis on peut définir différentes étapes principales.
Vous trouverez dans ce document un aperçu non exhaustif des différentes étapes de fabrication du pipeline 3D.
Bonne lecture.
Animatique
L’animatique est une des premières phases pratiques de la réalisation du film 3D, elle vient s’appuyer sur le scénario et le storyboard pour définir le rythme du film. L’animatique est la base visuelle du film sur laquelle celui-ci se construit progressivement. En fonction des types de workflows (3D calculée ou 3D temps réel) l’animatique et le montage pourront évoluer au cours du projet. L’animatique peut être une suite de séquences vidéo (timeline vidéo) ou de plans 3D temps réel – Autodesk Motion Builder, Unreal Engine,Unity).
Modélisation
Il s’agit de la phase de création des objets 3D (assets / props) qui serviront pour la création de scènes plus complexes (personnages, objets, bâtiments, végétaux, terrains, véhicules,…). Cette phase s’appuie sur la préproduction pendant laquelle ont été définis le design des objets, personnages, scènes et lieux du film.
La modélisation d’objets est une des étapes de création les plus gourmandes en temps et argent, notamment quand il s’agit de personnages photoréalistes, il est donc important de pouvoir créer des objets facilement et de pouvoir les réutiliser. Les techniques de création d’objets ont beaucoup évolué ces dernières années.
Un objet 3D est composé de :
Un objet 3D est composé de :
Géométries : ensemble de polygones, nuages de points, primitives ou fonctions mathématiques, qui permettent de décrire l’objet à afficher en 3D.
Matériaux (shaders) : paramètres (couleur de base, réflectivité, transparence, dispersion, émission,…) et textures qui seront utilisés pour habiller et éclairer l’objet lors de la phase de rendu. Les textures peuvent être des images 2D (bitmap), des séquences d’images / vidéos ou des textures 3D (procédurales, créées à partir de fonctions mathématiques comme dans Adobe Substance 3D Collection).
Il existe des matériaux plus ou moins réalistes en fonction des algorithmes d’éclairage utilisés (flat, Gouraud, Phong, Blinn, matériaux physiques,…).
La création d’objets 3D peut se faire par différentes techniques.
Création manuelle
Pendant longtemps la création d’objets 3D s’est faite manuellement, c’était la seule option pour créer des assets. Celle-ci peut se faire avec des applications classiques, telles que Blender, Autodesk Maya, 3ds Max, Maxon Cinema4D, Trimble SketchUp, … les objets sont principalement créés à partir de points (vertex), polygones (poly) et primitives 2D extrudées (shape), primitives 3D et booléens.
Sculpture 3D
Scultpure 3D
Plus ludique, gourmande en polygones, cette technique permet de sculpter numériquement des objets à partir d’applications dédiées telles qu’Autodesk Mudbox, Maxon Zbrush, Foundry Modo,… Très utilisées pour la création de personnages détaillés.
Photos & scan 3D
On peut reconstruire un objet réel en 3D à partir d’un ensemble de photos grâce à un logiciel de photogrammétrie comme Reality Capture d’Epic, du machine learning (ML) ou de scans de l’environnement réalisés avec des technologies de LiDAR (Light Detection and Ranging) qui permettent de capturer un nuage de points. Démocratisée par Apple sur ces iPhone Pro, les technologies de LiDAR plus avancées sont notamment utilisées pour guider les voitures autonomes.
Librairie d’objets
De nombreuses librairies d’objets sont proposées depuis des années par des sociétés comme Turbosquid ou Sketchfab. Les objets 3D sont proposés à l’achat. Des applications comme Unreal Engine d’Epic proposent également des scènes complètes.
L’évolution des technologies de scan 3D a vu l’émergence de nouvelles librairies d’objets à base de scans 3D comme Quixel d’Epic qui propose de nombreux environnements (forets, déserts,…).
Des sociétés comme Chaos – connue pour son moteur de rendu 3D V-Ray - proposent également des scans sur mesures de matériaux physiques pour des objets encore plus réalistes. Le nuage de points obtenu lors d’un scan doit être nettoyé et optimisé pour être utilisé comme objet ou ensemble d’objets dans une application 3D classique, il peut être converti manuellement ou automatiquement en polygones à partir de différentes applications 3D comme Autodesk Revit, Recap ou autre.
D’autres techniques voient le jour notamment grâce au machine learning et au GPU qui permettent d’automatiser et d’accélérer sensiblement le traitement d’image pour extraire un modèle 3D. C’est ce que démontre par exemple Nvidia avec les réseaux neuronaux pour convertir des photos en scènes (NeRF).
Texturing
Une fois l’objet créé, il faut lui appliquer matériaux et textures, on viendra par exemple appliquer une texture de bois vernis pour un parquet en chêne. Ce matériau peut être réalisé avec une photo de parquet retouchée avec des outils comme Adobe Photoshop et différents paramètres (réflexion, lustre, transparence, émission, relief, …), à partir de textures procédurales (fonctions mathématiques) qui viendront simuler la texture et le veinage du bois (Adobe Substance Designer) ou de matériaux physiques scannés (Epic Quixel Megascans, Chaos Scans,..).
Rigging / setup
Le rig est une structure utilisée pour l’animation d’un objet ou d’un personnage, dans ce cas il s’agit d’un squelette invisible qui structure le personnage à animer avec les différentes contraintes mécaniques similaires au squelette humain (ou pas).
On associe ensuite les différentes parties du corps du personnage au squelette. On peut alors animer le squelette pour donner vie au personnage. Des outils existent aujourd’hui pour simplifier et automatiser le processus de rigging : Autodesk Motion Builder, Unreal Epic.
Pour des animations de personnages plus réalistes il faudra prendre en compte les différents muscles et leurs déformations.
Layout
Le layout est la mise en place des différents acteurs qui composent une scène : décors, objets, personnages, position des lumières et caméras en vue de calculer l’animation du plan.
Animation
L’animation est aussi un poste de création important notamment pour des animations réalistes de personnages.
Différentes techniques sont utilisées avec des applications dédiées telles qu’Autodesk Motion Builder ou des applications 3D plus génériques : Autodesk Maya & 3dsMax, Blender, Maxon Cinema4D,…
Animation Keyframe
Il s’agit d’animer à la main les objets de la scène à l’aide de clés d’animation. On peut par exemple créer deux clés de position d’une caméra à deux instants différents sur la timeline, le logiciel d’animation va interpoler les positions intermédiaires entre les 2 clés d’animation. Ceci est généralement réalisable pour n’importe quel paramètre ou objet d’une scène : caméra, objets, matériaux, …
Pour l’animation de personnages il existe des outils plus spécifiques qui permettent notamment d’animer un squelette avec ses contraintes physiques (cinématique inverse / IK).
Capture de mouvement / mocap
Les personnages peuvent être animés à la main en utilisant l’animation keyframe qui donne plus de liberté dans l’animation cartoon par exemple. On peut également utiliser la capture de mouvement, pour des objets simples comme une caméra 3D à laquelle on associe le mouvement d’une caméra réelle avec un mouvement physique plus réaliste (caméra épaule) ou pour des objets plus complexes comme les personnages. On parle alors de motion capture.
Lors d’une session de mocap, un acteur est habillé d’une combinaison équipée de trackers ou capteurs (Xsens). Les trackers réfléchissants ou lumineux sont filmés par des caméras qui permettent de reconstruire en 3D le squelette de l’acteur filmé. Les données de tracking sont ensuite analysées et nettoyées via un logiciel d’animation de personnage adapté (avec gestion du squelette / Rigs) comme Autodesk Motion Builder.
D’autres solutions existent à base de capteurs de mouvements qui, placés sur l’acteur, permettent d’enregistrer le mouvement du squelette sans avoir besoin de filmer l’acteur (Rokoko).
La capture de mouvement peut également être utilisée pour capturer les mouvements du visage et notamment l’animation des lèvres (synchro labiale / Lip Sync).
Voir Cubic Motion d’Epic.
Analyse de vidéo
D’autres technologies se développent notamment autour du machine learning, comme l’analyse de vidéo. C’est notamment ce que propose la société française Kinetix.
Librairie d’animation
Comme pour la création d’objets 3D, il existe des librairies d’animation de personnages qui peuvent être appliquées sur des personnages disposant d’un squelette d’animation (rigging). Il est ensuite possible de mélanger les différentes animations d’un personnage de façon fluide.
En France, certains studios 3D proposent des prestations de capture de mouvements pour tous types de projets 3D.
Animation comportementale
L’animation comportementale permet d’animer automatiquement des personnages et objets en fonction de leur environnement et de comportements associés. Ces fonctionnalités sont notamment utilisées pour l’animation et la simulation de foule, que ce soit pour les VFX ou d’autres industries.
Voir Golaem.
VFX
Les VFX 3D concernent les différents effets qui vont habiller l’image : flames, fumées, brouillards, explosions, fluides, particules,…. Des logiciels ou fonctions spécifiques sont développées pour gérer les VFX en 3D : SideFX Houdini logiciel dédié pour la gestion des VFX procéduraux, BiFrost ensemble d’outils intégrés dans Autodesk Maya, Chaos Phoenix FD…. Les VFX sont devenus une partie importante dans la création 3D et sont assez gourmands en ressources matérielles (CPU, GPU, mémoire, calcul de simulation en amont….).
Éclairage
Une fois les matériaux paramétrés et les objets texturés, on va passer par une phase d’éclairage et de rendu. Cette étape est la phase de mise en place des lumières et de l’ambiance de la scène. Le Lighting est lié au moteur de rendu 3D utilisé pour calculer l’image de la scène finale.
Il existe plusieurs algorithmes de rendu plus au moins réalistes, utilisant le calcul CPU et/ou GPU via la carte graphique. Des applications proposent également des fonctionnalités de rendu 3D temps réel, comme dans un moteur 3D de jeu vidéo, Epic Unreal ou Unity par exemple.
Rendu
La phase de rendu utilise les différents paramètres de la scène (objets, environnements, textures et matériaux, vfx, simulation, …) pour calculer l’image finale. Il existe de nombreuses techniques et moteurs de rendu.
Illumination locale
Le rendu apparait dans le début des années 70 pour remplacer l’affichage filaire (wireframe). Les premières techniques de rendu sont plutôt simples et peu réalistes, elles s’appuient sur un éclairage local des faces (flat, Gouraud, Phong, …), et sont complétées de différents paramètres : textures, ombres, bump map, projection mapping. Peu consommatrices en temps de rendu ces différentes techniques sont utilisées pendant des années par les consoles de jeux ou les viewports des applications 3D.
Ray tracing
L’apparition des premiers processeurs multithread a permis de développer des techniques de rendu plus réalistes prenant en compte une partie des lois physiques de la lumière.
Le ray tracing, à la mode aujourd’hui avec les cartes graphiques Nvidia RTX, n’est pourtant pas une technique récente, elle est apparue pratiquement en même temps que les premiers rendus. Cette technique plus gourmande en temps de rendu envoie des rayons lumineux de la caméra vers la scène puis du point d’impact vers chacune des lumières de la scène – à l’inverse du chemin de la lumière - pour déterminer la couleur du point d’impact en fonction des propriétés de l’objet.
Le ray tracing permet d’obtenir des images plus réalistes (réflexions, réfractions,…) mais avec un temps de calcul beaucoup plus long. Le ray tracing reste une approximation incomplète de l’illumination de la scène.
RenderMan (Ed Catmull 1988 / Pixar) Mental Ray (Mental Image en 1989, racheté par Nvidia en 2007)
Radiosité
Complémentaire du ray tracing, la radiosité est une technique qui calcule les échanges d’énergies entre les différentes surfaces de la scène. Elle passe par une phase de résolution de l’éclairage de la scène indépendante de la position de la caméra. Cette technique permet un rendu avec des ombres douces mais ne gère pas les spéculaires, les réfractions et réflexions.
Path Tracing
Radiosité et ray tracing ne sont pas complets, ils ne gèrent pas les caustiques et ne permettent pas d’obtenir une image photo réaliste sans astuces.
Le Path Tracing va, pour chaque pixel de l’image, lancer plusieurs rayons aléatoirement (Monte Carlo) dans la scène depuis la caméra. Lorsqu’un rayon rencontre une surface il rebondi en perdant de l’énergie jusqu’à ce qu’il rencontre une lumière ou n’a plus d’énergie.
voir Autodesk Arnold
Photo Mapping
Développé par Henrik Wann Jensen, le photo mapping utilise un lancer de rayons depuis la caméra ainsi que depuis les sources de lumière.
Chaque source de lumière crée un groupe de photons dont le nombre est proportionnel à la luminosité de la source.
Les photons sont diffusés dans la scène (scattering), lorsqu’ils touchent une surface, l’algorithme décide en fonction de la nature de l’objet quelle part de son énergie est absorbée, réfléchi ou réfractée.
A chaque intersection on enregistre le photon avec son point d’intersection dans une Photon Map qui servira ensuite pour la phase de lancer de rayons pour estimer l’éclat de chaque pixel.
Réduction du bruit 3D
Ces techniques créent du bruit dans l’image, comme en photo. Il peut être diminué par certaines optimisations et par l’envoi d’un plus grand nombre de rayons au détriment du temps de calcul. Il est nécessaire de trouver un compromis entre temps de calcul et qualité de l’image.
Pour palier se problème de nouveaux algorithmes sont arrivés sur le marché pour diminuer le bruit sans augmenter le nombre de rayons lancés comme Optix de Nvidia qui utilise le machine learning.
CPU VS GPU : Fight !
Le rendu d’une image se calcule via les processeurs du PC (CPU) ou via les cœurs de la carte graphique (GPU), quand les algorithmes utilisés le permettent, à partir des fonctions câblées en hardware. Les temps de rendu sont liés aux format des images (HD, UHD, 4K), stéréoscopie…
Le rendu CPU
Le rendu CPU n’a pas de limites fonctionnelles mais n’a pas non plus de fonctions dédiées au calcul graphique « hardcodées » – le calcul est plus lent.
Le rendu GPU
La carte graphique embarque des processeurs graphiques dédiés (cœurs CUDA, Open CL,…), le calcul est plus rapide pour les fonctions câblées comme le ray tracing. Le GPU est de plus en plus performant et permet d’intégrer les dernières technologies de rendu telles que Chaos V-Ray, Unreal Engine, Octane Render, Redhsift…
Les principaux moteurs de rendu CPU et GPU
Autodesk Arnold, Corona Renderer, Guerilla Render, Maxwell Render, Nvidia Mental Ray, Octane Render, Maxon Redshift, Pixar RenderMan, Epic Unreal Engine, Unity, Chaos V-Ray, Viz Engine (Broadcast).
Passes de rendu
Le calcul d’une image 3D peut être décomposé en différentes passes de rendu puis recomposé lors d’une phase de compositing. Il est possible ainsi de contrôler séparément les différentes passes de rendu et de venir appliquer des effets 2D et/ou étalonnage sur chacune des couches (layers). On peut par exemple calculer l’arrière-plan d’une scène 3D séparément pour y appliquer un effet de flou 2D plus rapide à calculer qu’en 3D.
Ferme de rendu
En fonction de la complexité des rendus on peut être amené à utiliser des fermes de rendu, ensemble de stations dédiées au calcul CPU ou GPU, les temps de rendu sont généralement proportionnels au nombre de machines de la render farm.
Stéréoscopie
Moins en vogue ses dernières années, la stéréoscopie est un format d’image qui reste plutôt bien adapté à la 3D, même si c’est un format qui génère des contraintes additionnelles notamment pour le rendu.
Cette technique permet de reproduire un effet de relief en calculant 2 images 3D au lieu d’une, séparées de l’entre axe, distance séparant les deux yeux. Pour cela il faut calculer chaque plan deux fois avec un point de vue légèrement différent, soit deux caméras différentes espacées de l’entre axe. Pour faire simple, cela impose de calculer deux fois le film.
Finishing
La finalisation de projet peut passer par plusieurs étapes :
Le compositing
Utilisé pour recomposer les passes de rendu et/ou ajouter des effets 2D. Il existe différentes applications de compositing : Autodesk Flame, Blackmagic Fusion, Foundry Nuke…
Le montage
Il s’appuie principalement sur l’animatique. Une phase qui peut être plus facilement modifiée dans le cas de production 3D temps réel. De nombreuses solutions de montage existent sur le marché : Avid Media Composer, Adobe Premiere, Apple Final Cut pro ou encore Resolve de Blackmagic Design.
L’étalonnage
Permet d’unifier la colorimétrie des plans avec une passe de traitement globale des couleurs (primaires) et des passes d’ajout d’effets colorimétriques sur certains plans pour obtenir une ambiance particulière ou mettre en avant une partie de l’image, un objet ou un personnage.
L’étalonnage des couleurs peut être aussi utilisé pour une sortie HDR (High Dynamic Range) Dolby Vision ou HDR10 d’un film au cinéma ou sur une plateforme compatible HDR (Netflix, AppleTV, Amazon et Disney+…).
Voir Blackmagic Resolve, Colorfront Transkoder, Autodesk Lustre…
Mix Audio
Partie importante d’un film, le travail de l’audio intervient tout au long de la réalisation du film – notamment lors de l’animation faciale et du lip sync. Le mix audio permet d’intégrer les différents effets sonores du film au projet : voix, bruitages, sons, musiques et VFX.
Titre et sous titres
Le titrage et le sous-titrage du film.
Masterisation
Dernière phase, avec la création des fichiers numériques pour la diffusion en salle, sur les plateformes de VOD ou autre (DCP et masterisation HDR)….
Blackmagic Resolve, Colorfront Transkoder
CONCLUSION
Les pipelines 3D peuvent être très différents en fonction de la nature des projets et des logiciels impliqués : 2D, 3D, animation, rendu… et du type de rendu : 3D calculée ou 3D temps réel. Dans le cas de projets 3D temps réel, le pipeline de production sera beaucoup moins linéaire et les modifications plus faciles.
Chaque cellule graphique à son propre pipeline de production 3D avec ses logiciels et son développement sur mesure – certains studios ont même plusieurs pipelines en fonction du type de projet ou des outils utilisés pour les réaliser.
Il existe des outils de suivi de production 3D comme Autodesk Shotgrid, qui viennent s’interfacer aux pipelines 3D, ainsi que des applications plus spécifiques pour le travail collaboratif multi site.
A SUIVRE
La demande de contenus 3D a explosé ces dernières années, que ce soit dans les industries classiques du média (animation, vfx, jeu vidéo,…), plus récemment en broadcast (habillage 3D temps réel et murs LEDs), mais également pour la visualisation, la simulation et l’industrie en général.
De nouveaux acteurs s’intéressent fortement à la réalité virtuelle ainsi qu’à la création d’univers 3D avec l’avènement du Metaverse. Nvidia avec Omniverse, sa plateforme de création collaborative 3D autour de l’USD, format ouvert de description de scènes 3D de Pixar, Meta (anciennement Facebook), Google, ou encore Epic avec Fortnite. De nombreux éditeurs et fabricants se lancent dans le far West du Metaverse.
Ce nouvel engouement devrait accélérer d’autant plus la demande de création de contenus 3D et faire évoluer les pipelines de production.
Quelques références
Epic Reality Capture (scans 3D)
Golaem (animation de foule)
Rokoko (mocap)
Xsens (mocap)
Kinetix (animation 3D)
Technos
Pixar USD (gestion de scènes 3D)
Cinematique Inverse (wikipedia)
Photogrammétrie (wikipedia)
Lidar (wikipedia)
Caustiques (wikipedia)
Ray Tracing (wired)
Pour en savoir plus sur nos solutions 3D et leur écosystème :
images / crédits : Autodesk
Comments