Le pipeline NeRF classique, tel qu’il est décrit dans la plupart des tutoriels, s’arrête à la synthèse de nouvelles vues. En production, le vrai défi commence après l’optimisation du champ de radiance : exporter une représentation exploitable dans un moteur temps réel sans passer par une chaîne de conversion fragile. Nous détaillons ici les étapes critiques d’un pipeline complet, de la capture à l’intégration finale, en intégrant les évolutions récentes autour du 3D Gaussian Splatting et des formats d’échange normalisés.
Positional encoding et représentation implicite : ce qui conditionne la qualité du rendu NeRF
Un réseau NeRF encode une scène sous forme de fonction continue qui associe des coordonnées 5D (position spatiale x, y, z et direction d’observation θ, φ) à une couleur RGB et une densité volumétrique σ. La qualité du rendu dépend directement du positional encoding appliqué aux coordonnées d’entrée.
Sans cet encodage fréquentiel, le réseau MLP lisse les hautes fréquences spatiales. Les détails fins (textures de surface, reflets spéculaires dépendants de l’angle) disparaissent. Nous recommandons un nombre de bandes de fréquences adapté à la résolution cible : trop peu dégrade les détails, trop produit du bruit sur les zones uniformes.
Le volume rendering par intégration le long de rayons reste le goulot d’étranglement principal. Chaque pixel de l’image finale nécessite l’évaluation du réseau en dizaines de points échantillonnés sur le rayon correspondant. La stratégie d’échantillonnage hiérarchique (coarse-to-fine), proposée dès le papier original, réduit le coût mais ne le supprime pas. C’est cette contrainte qui a poussé l’industrie vers des représentations explicites comme le Gaussian Splatting.

Migration vers le 3D Gaussian Splatting dans les pipelines de production
NeRF reste dominant en recherche, mais le Gaussian Splatting l’a supplanté pour le rendu temps réel en production. La raison est structurelle : un ensemble de gaussiennes 3D se rasterise directement, sans ray marching itératif. Le gain en latence est suffisant pour atteindre le temps réel sur du matériel grand public.
Un pipeline de production type enchaîne aujourd’hui trois phases distinctes :
- Reconstruction de la scène avec des outils comme nerfstudio ou gsplat, qui optimisent les paramètres des gaussiennes (position, covariance, opacité, harmoniques sphériques pour la couleur)
- Édition et nettoyage dans des éditeurs spécialisés tels que SuperSplat ou SplatForge, où l’on supprime les artefacts, recadre la scène et ajuste la densité de points
- Export vers un format d’échange normalisé pour intégration dans un moteur temps réel (Unreal, Babylon.js, Three.js, Vision Pro)
Le point de friction historique se situait entre la deuxième et la troisième phase. Chaque viewer avait son format propriétaire, ce qui obligeait à maintenir des scripts de conversion fragiles et non versionnés.
Formats d’échange glTF et OpenUSD pour scènes NeRF et Gaussian Splatting
La convergence récente vers des formats d’échange normalisés change la donne pour les pipelines de bout en bout. Deux standards émergent en parallèle.
L’extension KHR_gaussian_splatting pour glTF permet d’embarquer les données de gaussiennes directement dans un conteneur glTF standard. Tout viewer compatible glTF peut théoriquement charger la scène sans plugin additionnel. Pour les pipelines orientés cinéma et effets visuels, le schéma UsdVolParticleField3DGaussianSplat d’OpenUSD 26.03 offre une intégration native dans les workflows Pixar/SideFX.
L’impact concret : nous pouvons désormais chaîner capture, optimisation neurale, édition et intégration temps réel sans format propriétaire intermédiaire. Un asset Gaussian Splatting exporté en glTF se charge dans Three.js ou Babylon.js comme n’importe quel modèle 3D classique. Cette interopérabilité était inenvisageable il y a encore deux ans.
Choix du format selon le contexte de déploiement
Pour du web et du mobile, glTF avec l’extension KHR reste le choix le plus pragmatique. L’écosystème de viewers est large, la taille des fichiers maîtrisée. Pour des pipelines VFX intégrés à Houdini ou USD Composer, OpenUSD s’impose naturellement puisqu’il s’inscrit dans une chaîne d’outils déjà standardisée.
Le piège fréquent : exporter depuis nerfstudio dans un format intermédiaire .ply non optimisé, puis convertir vers glTF en perdant les harmoniques sphériques d’ordre supérieur. Le rendu final perd alors ses reflets directionnels, ce qui dégrade la fidélité perçue sans que l’erreur soit évidente au premier coup d’œil.

Entraînement et optimisation du réseau de radiance : arbitrages pratiques
L’entraînement d’un NeRF ou d’un modèle 3DGS repose sur un jeu d’images multi-vues avec poses caméra estimées, typiquement via COLMAP. La qualité des poses conditionne tout le reste du pipeline. Des poses caméra mal estimées produisent des artefacts de dédoublement qu’aucun post-traitement ne corrige proprement.
Sur le plan matériel, un GPU avec suffisamment de VRAM est nécessaire pour les scènes denses. L’optimisation per-scene (chaque scène nécessite son propre entraînement) reste la norme en production, même si des approches feed-forward commencent à émerger en recherche pour de l’inférence directe sans réentraînement.
Nous observons que la durée d’entraînement acceptable en production dépend du cas d’usage. Pour de la visualisation architecturale où chaque scène est unique, quelques dizaines de minutes par scène sur un GPU récent est un budget raisonnable. Pour du e-commerce à grande échelle avec des centaines de produits, les approches Neural Graphics Primitives (NGP) réduisent drastiquement le temps d’entraînement grâce à des structures de données hashées.
Intégration du rendu neural dans un moteur temps réel
L’étape finale du pipeline consiste à charger l’asset optimisé dans l’environnement de déploiement. Pour les applications web, Three.js et Babylon.js supportent désormais le chargement de scènes Gaussian Splatting via des loaders glTF étendus. Le rendu s’effectue par rasterisation des gaussiennes, triées par profondeur à chaque frame.
Le coût de tri par profondeur augmente linéairement avec le nombre de gaussiennes. Au-delà de quelques millions de splats, le tri devient le facteur limitant sur mobile. Des techniques de level-of-detail adaptatif, où l’on fusionne des gaussiennes distantes, permettent de maintenir un framerate acceptable sans dégradation visible à l’écran.
Pour les casques XR (Vision Pro, Quest), le rendu stéréoscopique double la charge puisqu’il faut rasteriser la scène pour chaque œil. Les pipelines les plus aboutis pré-calculent un atlas de vues intermédiaires pour réduire cette surcharge.
Le pipeline complet de rendu 3D neural n’est plus un prototype de recherche. Avec la normalisation des formats d’échange et la maturité des outils d’édition, la chaîne capture-entraînement-export-rendu fonctionne en production. Le choix entre NeRF pur et Gaussian Splatting se fait sur un critère simple : si le rendu doit tourner en temps réel, le splatting l’emporte. Si la fidélité volumétrique prime sur la latence, le NeRF classique garde sa pertinence pour le rendu offline.


