

Ray tracing, la nouvelle révolution graphique?
Nvidia la qualifie de plus grande avancée graphique depuis l'introduction de l'architecture CUDA: le ray tracing. Les nouvelles cartes graphiques RTX de l'inventeur du processeur graphique devraient rendre le ray tracing en temps réel accessible à l'utilisateur lambda. Que se cache-t-il derrière cette technologie et qu'est-ce que ça signifie pour les joueurs?
Le ray tracing permet d'obtenir des effets lumineux réalistes et devrait rendre les jeux encore plus réalistes. Microsoft a développé une nouvelle API DirectX Raytracing (DXR) et Epic Games fournira cette année un ray tracing en temps réel aux développeurs d'Unreal Engine. Tout semble nous conduire vers une nouvelle révolution graphique.
D'où vient le ray tracing?
Qu'est-ce qui distingue le ray tracing de la rastérisation?
Le ray tracing se distingue grâce à sa modélisation très réaliste d'un environnement physique, mais requiert une plus grande puissance de calcul. La rastérisation, au contraire, est plus rapide et peut donc être combinée à de nombreux autres algorithmes. Cependant, le rendu de la rastérisation est loin d'être aussi impressionnant que celui du ray tracing.
Rastérisation (rastérisation de polygones)
D'autres algorithmes comme les shaders ou le shadow mapping viennent ensuite s'ajouter au procédé pour rendre la couleur des pixels plus réaliste.
La rastérisation est limitée: un objet placé en dehors du champ de vision, par exemple, sera ignoré. Il pourrait cependant projeter une ombre sur la scène observée ou même être visible ailleurs. Certains de ces effets peuvent être rendus par des algorithmes supplémentaires comme le shadow mapping, mais les scènes ne ressembleront jamais à la réalité.
C'est parce que la rastérisation ne fonctionne pas comme notre œil. En revanche, le ray tracing s'inspire de la nature.
Ray tracing
Le ray tracing simule le parcours inverse de la lumière vers notre œil. Lorsque l'on observe une scène, notre œil reçoit les rayons provenant de la source lumineuse qui sont reflétés par les divers objets qui nous entourent.
La technologie du ray tracing consiste à envoyer un rayon lumineux sur chaque pixel en partant du point de vue. Le point de vue est votre perception d'une image bidimensionnelle. Le rayon s'étend sur une demi-droite jusqu'à ce qu'il rencontre un élément tridimensionnel de l'image à rendre. On utilise ce point d'impact pour déterminer la couleur du pixel.
En fait, le rendu ray tracing est une sorte de réflexion lumineuse inversée, car les rayons partent du point de vue pour aller vers la source lumineuse. L'algorithme à l'origine du ray tracing de John Turner Whitted se base d'ailleurs sur le principe du retour inverse de la lumière. Il n'est pas adapté au rendu d'images, car il effectue trop de calculs inutiles.
Et ça n'est pas fini. Pour un rendu encore plus réaliste, il faut également prendre en compte la réflexion et la réfraction. C'est-à-dire la quantité de lumière réfléchie au moment de l'impact et la quantité de lumière qui pénètre dans le matériau. On envoie là encore des rayons pour déterminer la couleur finale du pixel.
En résumé, le ray tracing utilise plusieurs types de rayons lumineux pour rendre une image. Les rayons primaires déterminent la visibilité de l'objet. Les rayons secondaires se composent de faisceaux d'ombre, de réflexion et de réfraction et établissent un modèle d'éclairage.
Si tout ça était un peu trop théorique pour vous, je vous recommande ce tutoriel (en anglais). Vous apprendrez d'abord la théorie avec la vidéo, puis mettrez le tout en pratique.
Les avantages du ray tracing
Les effets de transparence sont un autre avantage du ray tracing. Le calcul correct de la transparence est particulièrement complexe avec la rastérisation, puisqu'il dépend de l'ordre de rendu. Pour obtenir de bon résultats, il faudrait que les polygones transparents soient triés du plus éloigné de la caméra au plus proche avant le calcul du rendu.
En pratique, ce procédé exige une trop grande puissance de calcul et les erreurs ne sont pas inévitables, car le tri serait fait sur les polygones et non sur les pixels. Le ray tracing, au contraire, permet de rendre de beaux effets de transparence.
Il faut aussi ajouter le calcul des ombres Dans la rastérisation, c'est entre autres le shadow mapping qui permet de les rendre à l'image. Mais pour cela, il faut beaucoup de mémoire et le crénelage pose problème. Le ray tracing permet d'éviter tout problème sans même avoir recours à un algorithme supplémentaire.
Révolution graphique ou simple évolution?
Et ce quelque chose pourrait bien être le ray tracing. Les premières démos de jeux avec ray tracing sont franchement impressionnantes. Je me croirais dans un film d'animation, sauf que celui-ci, je peux le contrôler. Le mieux c'est que vous constatiez par vous-même.
Les démos sont tout de même époustouflantes et on à plus qu'à se réjouir de la nouvelle révolution graphique.
Les nouveaux GPU disponibles chez digitec
RTX 2080 Ti
RTX 2080
La technologie et la société me fascinent. Combiner les deux et les regarder sous différents angles est ma passion.
Des solutions pratiques aux questions quotidiennes sur la technologie, des astuces de ménage et bien plus encore.
Tout afficher
















