Neon Noir : la démo Ray tracing sans RTX

Souvenez-vous, il y a deux mois nous vous avions écrit quelques lignes sur Neon Noir, la démo de Cryengine 5 à base de Ray Tracing sans l’utilisation des RTX, les derniers chips graphiques de Nvidia. Les développeurs de chez Cryengine font le point sur leur feuille de route et les technologies utilisées pour Neon Noir.

 

Pour un Ray Tracing édulcoré ?

Pour leur démo, Cryengine n’utilise pas que le Ray Tracing comme celui des GTX 10. Ils ont mis au point une technologie nommée « Sparse voxel octree global illumination » (SVOGI), aussi connue sous le nom de « voxel GI ». Cette technologie utilise les « Cônes de Voxel », procurant un effet de réalisme au niveau des éclairages, des ombres et des reflets, tout cela en temps réel. Nous pouvons voir les résultats qu’obtiennent cette technologie dans Kingdom Come: Delivrance :

 

Ron Frölich, modeleur 3D pour Hunt: Showdown , explique aussi le fonctionnement général de cette technologie. Sur les scènes ayant des matières très réfléchissantes, la technologie SVOGI était contraignante, ne permettant pas aux objets de se refléter parfaitement. Grâce à l’arrivée du Ray Tracing et le traitement de Nvidia par les RTX, tout cela a été balayé d’un revers de la main (de l’aveu même des responsables du « tourbillon vert »), leur laissant le champ libre afin d’imaginer un mix des deux solutions.

 

 

Le but pour Cryengine avec Neon Noir était alors d’atteindre un rendu similaire d’une image entièrement calculée par un chipset RTX. En effet, chaque pixel est calculé en fonction de ce qu’il doit réfléchir. S’il n’est pas sur une surface réfléchissante, il est alors calculé de façon traditionnelle par les Cônes de Voxel pour rester en raccord avec les pixels à proximité, eux potentiellement en Ray Tracing. Tout ce travail permet alors un rendu plus simple à calculer pour les GPU « classiques », non-RTX dirons-nous. En revanche, cela nécessite un travail de préparation des scènes, confié au CPU. Nous pouvons conclure que SVOGI va solliciter autant, voire plus, les deux centres de calcul de nos machines qui sont les CPU et les GPU.

 

 

Les Cônes de Voxel et la technologie SVOGI

À ce stade, un petit point sur cette technologie ne nous semble pas de trop. Le SVOGI est donc une technologie d’illumination globale à ne pas confondre avec l’occlusion ambiante comme l’HBAO+ par exemple. L’illumination globale est une technique de rendu 3D qui calcule de manière plus générale l’image, dans notre cas entièrement en SVOGI. Quant à l’occlusion ambiante, elle n’est ni plus ni moins qu’une sous-branche de l’illumination globale et fonctionne main dans la main avec celle-ci.

 

 

D’accord ! Mais les Cônes de Voxel dans tout ça ? Il est important justement de comprendre la différence entre Illumination globale et occlusion ambiante. En effet, le SVOGI reposant principalement sur la technologie Voxel Ray Tracing, permet de calculer une image avec une illumination en temps réel. La vidéo ci-dessous extraite de Crysis 3 en 2012 peut ainsi vous donner une idée de l’utilisation de cette technologie avec les reflets sur l’eau par exemple, ou sur des surfaces.

 

 

Le SVOGI et les Cônes de Voxel apportent donc un rendu plus proche de la réalité. Voici leur utilisation principale dans un rendu chez Crytek.

  • La lumière indirecte dynamique rebondit à partir d’objets statiques et de la plupart des objets dynamiques.
  • Zone d’ombre à grande échelle et ombres indirectes provenant de la géométrie statique (végétation, broussailles et terrain).
  • Fonctionne sans pré-calcul et ne nécessite pas la mise en place manuelle de nombreux projecteurs ou volumes légers.

Nous noterons que sur papier, cela est très proche du Ray Tracing pur utilisé par la firme au Caméléon.

 

 

En revanche, le SVOGI reste limité sur certains usages comme les surfaces dites « ultra-réfléchissantes ». Ou bien sur son temps d’exécution lors d’une téléportation de caméra dans une zone non pré-calculée. Voici ces points bloquants :

  • Les AO à grande échelle et les ombres indirectes ne peuvent être correctement modelées que par une géométrie statique.
  • Voxel GI ne travaille pas sur certains composants de rendu vers l’avant tels que les particules ou l’eau.
  • Certains artefacts tels que les images fantômes, les alias, les fuites de lumière et le bruit, peuvent être remarquables dans certains cas.
  • La végétation procédurale et la végétation fusionnée ne projettent pas d’occlusion, ni ombre secondaire.
  • Si la caméra est téléportée dans un tout nouvel emplacement, cela peut prendre quelques secondes avant que l’occlusion fonctionne correctement.
  • Seuls les objets et les matériaux pour lesquels la diffusion de cartes d’ombres est activée peuvent produire une lumière réfléchie appropriée.
  • Pour les objets dynamiques, la lumière indirecte ne fonctionne que dans les zones proches de la géométrie statique voxélisée.
  • La lumière indirecte peut avoir un retard perceptible de 1-2 images.
Vous devriez regarder aussi ça :
Récap' cinéma – Sorties du mercredi 18 décembre 2024

C’est pour cela que le point sur l’occlusion ambiante et l’illumination globale est important pour la compréhension de la suite. En effet, comme nous vous le disions plus tôt, le Ray Tracing a supprimé les défauts liés au SVOGI. Le Ray Tracing devient alors l’illumination globale de la scène et le SVOGI la solution d’occlusion ambiante. Cela a pour but d’avoir toujours une image plus proche de la réalité et en temps réel comme si elle était toujours complètement calculée en Ray Tracing. L’effet est donc immédiat et permet alors une meilleure gestion du Ray Tracing par tous les GPU existants sans avoir à payer un lourd tribut au niveau des images par seconde.

 

Et en pratique ?

Cryengine l’annonçait : leur démo de Neon Noir fonctionnait avec une Vega 56 de chez AMD. Vladimir Kajalin, ingénieur responsable du rendu pour Cryengine, précise qu’avec le Ray Tracing en full ultra, la carte de l’équipe rouge assure un 1080p à 30 images par seconde. Il affirme même qu’une fois activée à 50%, la carte tient une cadence de 40 images par seconde sans sourciller en 1440p ! Cela reste impressionnant pour une carte dont le prix public tourne actuellement autour de 250 €.

Leur technologie serait utilisable pour tous les utilisateurs ne possédant pas de carte avec l’accélération matérielle prévue par Nvidia pour traiter la problématique de Ray Tracing, tout en gardant des performances acceptables.

Leur annonce peut en faire sourire certains et faire grincer les dents des autres, mais dans sa mansuétude, Vladimir Kajalin rassure : les RTX peuvent tout à fait faire tourner sa  technologie. Il n’est pas là question d’ajouter des fonctionnalités aux RTX, néanmoins la méthode Cryengine permet aux RTX de meilleures performances avec plus de détails. Grâce à leur technologie, les RTX pourraient aisément tenir des affichages en 2160p avec le Ray Tracing actif sans sacrifier le reste.

 

Vers un Ray Tracing pour tous ?

Il est impossible pour nous d’avancer avec certitude sur ce sujet encore trop peu mûri. Mais le chemin semble tout tracé, sans mauvais jeu de mots ! Nous connaissons déjà le positionnement de Nvidia sur le sujet du Ray Tracing, plus récemment Intel ont eux aussi annoncé une prise en charge matérielle. D’autre part, AMD a décidé sciemment de ne pas s’engager dans la course au Ray Tracing, peut-être pour mieux appréhender l’évolution des développeurs autour de cette problématique. D’autant que ce que nous vous avons exposé dans cet article semble aller dans leur sens… N’oublions pas non plus que Sony a aussi annoncé une prise en charge du Ray Tracing sur la PS5 elle-même équipée de composants AMD. Idem pour Microsoft, puisque les deux prochains modèles de Xbox embarqueront des GPU custom à base d’architecture Navi. Le mystère et la compétition restent entiers et ouverts.

 

AMD Navi

 

Pour conclure, les plus courageux et anglophones d’entre vous regarderont avec intérêt l’interview complète de Vladimir Kajalin de Cryengine.

 

2 Commentaires