Le RayTracing hybride expliqué
Voilà le coeur de la nouveauté de l’architecture Turing : le ray tracing en temps réel, un Graal que beaucoup de graphistes et joueurs attendent depuis longtemps. Il ne s’agit évidemment pas d’un rendu 100 % en lancée de rayon, mais d’un rendu hybride, qui mélange rastérisation classique pour la majorité du rendu, et ray tracing accéléré en matériel pour les effets de lumières, de reflets et d’ombre.
A lire aussi : RayTracing : tout ce qu’il faut retenir des démos de la GDC 2018 |
Les coeurs RT sont en fait des accélérateurs matériel d’une fonction fixe, celle du BVH (Bounding Volume Hierarchy). Cet algorithme permet de structurer et de simplifier les opérations de ray tracing pour les rendre plus efficaces, notamment en réduisant le nombre d’intersections de triangles qui doivent être testées pour calculer la trajectoire finale du rayon. Les calculs BVH existent déjà dans les jeux, dans des volumes très restreints, via l’API D3D12 RayTracing Fallback. Ils prennent énormément de ressources, surtout s’ils doivent être appliqués dans un grand volume. Le calcul monopolise les coeurs programmables du GPU pour tester les intersections des rayons et des triangles. Il est donc impossible de faire tourner ça en temps réel sur un GPU normal pour un grand volume.
Chez Turing, les coeurs RT accélèrent précisément ces calculs. Le SM lance un rayon dans la scène à tester, et laisse le coeur RT simuler le reste en matériel, sans monopoliser les coeurs CUDA. Ainsi, la GeForce GTX 1080 Ti ne peut générer que 1,1 milliard de rayons par seconde en monopolisant tous ses coeurs CUDA, et la RTX 2080 Ti peut en générer 10 milliards seulement avec ses 68 coeurs RT. Des chiffres qui restent à confirmer, car ils correspondent à des tests spécifiques en ray tracing, et pas à un comportement en jeu.
GeForce GTX 1070 | GeForce GTX 1080 | GeForce GTX 1080 Ti | GeForce RTX 2070 FE | GeForce RTX 2080 FE | GeForce RTX 2080 Ti FE | Quadro RTX 5000 | Quadro RTX 6000 | |
---|---|---|---|---|---|---|---|---|
Rays Cast (Giga Rays/sec) | 0,65 | 0,89 | 1,1 | 6 | 8 | 10 | 8 | 10 |
Cœurs RT | 0 | 0 | 0 | 36 | 46 | 68 | 48 | 72 |
Le ray tracing est ainsi capable de dessiner des ombres quasi-parfaites à l’écran, mais aussi de gérer beaucoup mieux les reflets. Les rayons lancés restant limités, il faudra améliorer artificiellement le résultat par débruitage des ombres, lumières et reflets. Ce débruitage sera logiciel dans la majorité des cas, ce qui va prendre un peu de ressources. NVIDIA a déjà mis au point un système de débruitage matériel par intelligence artificielle, mais n’en parle pas dans ce cas précis. Difficile de savoir pour l’instant si les coeurs Tensor pourront s’en charger. Nous savons que les reflets par ray tracing de Battlefield V sont débruités par un algorithme logiciel. NVIDIA explique toutefois que dans le futur, le débruitage par IA remplacera toutes les méthodes logicielles actuelles.
Z’avez compris maintenant ?
Sommaire :
- NVIDIA Turing : une ray-volution ?
- Les GPU TU102, TU104 et TU106 en détail
- Le SM Turing en détail
- L'IA au service du rendu 3D
- Le RayTracing hybride expliqué
- Un shading plus intelligent
- La notion de RTX OPS : quel calcul ?
- NVLink : le renouveau du SLI ?
- Du 8K en 60 Hz, VirtualLink pour la VR
- Meilleur encodeur vidéo hardware
- Rénovation pour les cartes Founders Edition
- NVIDIA scanner : overclocking automatique !
Réagissez