GTC 2013 : Nvidia à l’assaut du ray tracing temps réel

Nvidia ray tracing 1

Grâce au GPU Computing, le ray tracing temps réel n’a jamais été aussi près de devenir une réalité. Quelques astuces permettent de se rapprocher de cet objectif.

De notre envoyé à San Jose – Le ray tracing, ou lancer de rayon, est une technique de rendu qui permet de générer des images de synthèse d’une qualité inégalée. Toutefois, aucun processeur actuel n’est capable de créer de telles images en temps réel.

David McAllister, OptiX Manager de Nvidia, explique dans le cadre du GTC 2013 que pour une scène full HD en 30 images par seconde, il faut être capable de lancer environ 12 milliards de rayons par seconde. Les GPU, aussi rapides soient-ils dans le secteur des calculs parallèles, restent encore loin de cette performance.

La carte graphique GeForce GTX 680 ne peut ainsi lancer que 350 millions de rayons par seconde. Le ray tracing temps réel reste donc « le saint Graal » de l’imagerie de synthèse. David McAllister donne des pistes pour résoudre ce problème.

Hardware, algorithmes et middleware

Première voie, l’accélération des performances, par exemple avec des cartes comme la GeForce GTX Titan. La puissance de calcul en simple précision grimpe ici de 50%. L’architecture Kepler permet également d’obtenir d’autres gains.

Sachant qu’une station de travail peut (au besoin à travers un boîtier externe) intégrer jusqu’à 16 cartes graphiques, le temps réel se rapproche à grands pas.

Autre voie évoquée, l’amélioration des algorithmes, avec par exemple des approches hybrides mêlant du calcul pur aux capacités graphiques des GPU, ou encore l’élimination des calculs inutiles. Des techniques sur lesquelles Nvidia travaille activement.

Enfin, un meilleur middleware est nécessaire. C’est ici qu’entre en jeu OptiX, qui se veut au ray tracing ce que sont l’OpenGL et DirectX à la 3D accélérée. « Optix expose le GPU au lancer de rayon », résume David McAllister.

Optix est aujourd’hui livré en version 3.0 et propose un support complet de l’architecture GPU Kepler. Notez qu’il fonctionne un peu plus rapidement sous Linux que sous Windows 7/8. Un élément intéressant si vous souhaitez optimiser votre système de rendu.

Nvidia ray tracing 2

OptiX, futur standard du ray tracing ?

Phillip Miller, directeur Advanced Rendering Product Management chez Nvidia, fait le point sur les offres utilisant OptiX.

Nous trouvons tout d’abord les solutions de la firme, Iray (rendu physique) et mental ray (production de films). D’autres produits utilisent également OptiX ou Iray comme Adobe After Effects CS6, Autodesk 3ds Max, Chaos Group VRay RT, Dassault Systèmes Catia et même bientôt Maya (d’Autodesk là encore).

Notez que la plupart de ces offres permettent de travailler sur un cluster de GPU. Le temps réel est alors allègrement dépassé, permettant ainsi de viser les très hautes résolutions ou des scènes et effets plus complexes.

Sur les machines moins puissantes, d’autres astuces sont utilisées. Iray 2013 propose par exemple de mixer deux moteurs de rendu très proches en matière de résultats : un optimisé pour l’interactivité et un second purement photo-réaliste  les deux s’enchainant automatiquement au sein du logiciel.

« Les gains en vitesse changent totalement le pipeline de mise au point d’une animation 3D, permettant ainsi de profiter d’un processus plus interactif », conclut Phillip Miller.

Nvidia ray tracing 3