Ray-tracing, Resizable BAR et Direct Storage. Derrière ces trois noms de technologies se cache une énorme révolution dans le jeu vidéo PC qui risque de chambouler les configurations actuelles.
Le mot « révolution » a l’habitude d’être lancé à tort et à travers dans le milieu de la high tech, depuis que les équipes marketing des grandes marques en ont pris possession. Pourtant, nous sommes véritablement au devant d’une révolution dans le milieu du jeu vidéo. Une révolution silencieuse, car elle impacte en priorité le développement des futurs titres.
Une révolution qui pourrait avoir un impact sensible. Il est donc plus qu’important que les consommateurs et joueurs sur PC prennent conscience de cette vague qui arrive bientôt. Sans quoi, leur config gamer pourrait vieillir en un claquement de doigts. Pour mieux l’expliquer, nous avons pu interroger John Benard, dit Linuxydable, un graphics engineer spécialisé dans les moteurs de jeu, qui est notamment contributeur du moteur de jeu libre Godot Engine et travaille en collaboration avec Microsoft et SEGA.
L’arrivée de la révolution
Avant même de parler de trois nouvelles technologies, revenons sur la situation actuelle du jeu vidéo. Alors que les éditeurs spécialisés dans le jeu vidéo sur PC ont progressivement disparu au fil des ans dans le segment AAA, les consoles ont pris une place toujours plus importante dans le développement. Si elles ont toujours été les plateformes principales de développement, pour le simple fait qu’elles sont les plus populaires et représentent donc le plus grand retour sur investissement, elles sont également devenues la source des innovations du secteur.
Et ça, nous avons pu l’observer dès la première présentation de la PlayStation 5 par Mark Cerny, l’architecte de la console de Sony. Lors de cette présentation, l’ingénieur a pu mettre en avant de nombreux points différenciants de sa machine, mais trois en particulier ont retenu l’attention. Tout d’abord, l’intégration du ray tracing, qui a confirmé pour beaucoup l’avenir de la nouvelle technologie. Ensuite, la mémoire de 16 Go en GDDR6 partagée entre le processeur et la carte graphique, un pool massif.
Mais enfin, et surtout, le fameux espace de stockage SSD passant par un bus PCIe 4.0, qui pouvait être librement appelé par le CPU comme le GPU. Et liée à cela, une démonstration impressionnante où les temps de chargement de Marvel’s Spider-Man ont virtuellement disparu. Mais c’est loin d’être le seul impact technique que la connexion directe entre le SSD et le couple CPU/GPU a apporté ; nous y reviendrons.
Cette architecture n’est pas exclusive à Sony. La Xbox Series X partage philosophiquement la même approche. Mais ce qu’il est important d’observer est qu’elle n’a pas encore été véritablement utilisée durant les trois premières années de vie de la « nouvelle génération ». Comme le veut la tradition, les premiers titres sortis étaient cross-gen : ils sortaient aussi bien sur PS5/Xbox Series X que sur PS4 et Xbox One. Passées ces trois premières années, nous pouvons vraisemblablement nous attendre à ce que les jeux utilisant pleinement cette architecture commencent à pointer le bout de leurs nez.
3 technologies à retenir pour les PC gamers
Pour pouvoir suivre ces innovations apportées par la nouvelle génération de consoles, il a fallu que la plateforme PC s’adapte et développe ses propres technologies. Et si l’une d’entre elles est partagée avec les consoles, les deux autres sont importantes à retenir.
Le ray tracing
Nous vous avons déjà expliqué largement comment le ray tracing fonctionne et quel impact il a sur le rendu des jeux vidéo. Nous allons donc ici nous concentrer sur l’impact qu’il apporte sur le développement des jeux vidéo avec l’aide de Linuxydable, qui caractérise la technologie d’« énorme innovation ayant beaucoup de potentiel sur les open world et les jeux en couloir. »
Il faut bien comprendre qu’aujourd’hui, le développement est influencé par des dizaines d’années de techniques de rendu qui sont aujourd’hui devenues très lourdes à gérer. On appel cela la rastérisation, et il s’agit d’astuce pour tenter de copier le réel de façon très artificielle en demandant beaucoup de travail aux développeurs. Il faut voir dans ce contexte le ray tracing comme une remise à zéro et une simplification de la manière de concevoir les jeux vidéo.
Auparavant, pour afficher un objet, il fallait lui assigner plusieurs couches différentes. Vous aviez l’objet en lui-même, puis une couche permettant de modifier sa forme à la volée, puis une couche permettant d’établir ses lumières, puis une autre permettant d’établir ses ombres, puis ses réflexions, et ainsi de suite. Avec le ray tracing arrive une nouvelle forme d’objet : le mesh shader. Cette dernière combine les techniques précédentes en une seule, permettant de simplifier la création de l’objet en 3D, et donc libérer les ressources de la machine.
C’est ici que le ray tracing prend tout son sens. Combinée au mesh shader, la nouvelle technologie allège le processus du rendu une nouvelle fois en réduisant drastiquement le nombre d’appels à la carte graphique devant être exécutés. « Auparavant, plus il fallait rendre d’ombres sur une shadow map, et plus celle-ci devait être recalculée. L’intérêt du ray tracing est de pouvoir calculer tout l’éclairage d’un monde sans surcharger le processus. » nous précise Linuxydable. En gros, plutôt que de multiples petits appels à toutes les ressources, le ray tracing ne doit vraiment faire son calcul qu’une seule fois. « On a plus qu’à envoyer les modèles 3D, le mesh shader, le post-processing, le FSR, et c’est fini !»
Le Resizable BAR (ou Smart Access Memory)
AMD l’a baptisé Smart Access Memory, les autres l’appellent Resizable BAR, mais la technologie reste la même. Auparavant, pour accéder à la VRAM d’une carte graphique, le processeur était limité à de simples segments de 256 Mo. De quoi crée de véritables goulots d’étranglement, ce que l’on ne veut pas absolument pas. Il n’est pas difficile d’imaginer à quel point cela est une limite à l’ère de la 4K, voire de la 8K, pour les jeux vidéo que l’on souhaite faire tourner à des fréquences d’affichage toujours plus élevées.
Le Resizable BAR met enfin un terme à cette limite et permet aux processeurs d’accéder à l’intégralité de la plage mémoire d’une carte graphique en un seul appel. Là encore, le but principal de cette technologie est de réduire le poids des instructions sur le processeur, pour libérer des ressources. Sur nos PC de jeu et nos consoles modernes, la carte graphique est vraiment beaucoup plus performante que le processeur sur certains types de calculs. Cet ancien fonctionnement pouvait forcer la carte graphique à attendre la fin du traitement par le processeur. Ce changement vient également faire évoluer la manière dont la VRAM est utilisée, puisqu’elle peut désormais être chargée et déchargée à la volée : « vu que c’est un pipeline direct, on peut envoyer l’objet 3D en direct sans devoir le stocker à l’avance. »
Notez que les cartes graphiques sont compatibles avec cette nouvelle technologie qu’à partir de la génération 30 de NVIDIA et la famille 6000 d’AMD. Les cartes graphiques Intel ont quant à elle quasiment besoin de cette technologie pour fonctionner.
Le Direct Storage
Windows s’est également mis à jour pour activer une nouvelle API à destination des développeurs : DirectStorage. Celle-ci est une nouvelle fois centrale pour alléger la charge du processeur du PC. Ce dernier était jusque-là le chef d’orchestre du transfert de données de l’espace de stockage (disque dur) vers la carte graphique.
Le DirectStorage permet à la carte graphique d’aller directement puiser dans le SSD de la machine, sans devoir avoir la validation du processeur pour ce faire. Cette technologie mettra tout simplement fin aux limites de taille de VRAM : « vu que le SSD est littéralement la VRAM, on alloue et désalloue à la volée. » Avec la compression de plus en plus importante des textures dans les jeux, il était important de permettre à la carte graphique d’utiliser sa puissance de calcul pour décompresser les données à la volée, plutôt que le processeur.
L’impact réel de ces technologies
Rappelons les faits. Nous sommes désormais aux trois ans des consoles de nouvelle génération, faisant que les développeurs vont commencer à exploiter la nouvelle architecture des consoles. Pour pouvoir s’y adapter, les PC ont enfin déployé et/ou affiné les technologies qui pourront s’adapter à cette nouvelle ère. Et les moteurs de jeu de cette nouvelle génération, comme Unreal Engine 5 ou Unity version 2022, sont officiellement déployés et s’améliorent de jour en jour.
Les trois technologies citées plus haut vont être importantes pour suivre ce changement de paradigme, où la « vieille façon de faire » sera progressivement remplacée pour contrer le problème actuel du jeu vidéo sur PC : le fait que le processeur crée un goulot d’étranglement. On veut appeler des textures du stockage pour les envoyer à la carte ? Le processeur ralentit. On veut charger ces textures sur la carte graphique ? Le processeur ralentit. On veut créer l’image finale pour le joueur ? Le processeur ralentit.
Le Direct Storage vient redonner le contrôle à la carte graphique. Le Resizable BAR permet de s’assurer que cette dernière utilise correctement toute la VRAM. Et quant au ray tracing… Il change les fondements même de nos jeux, de telle manière à ce que les données soient moins lourdes à charger, et que la carte graphique soit enfin appelée à faire une plus grande partie du travail. La finesse des développements futurs se retrouvera dans la capacité des développeurs à proprement balancer la charge entre CPU et GPU, selon les capacités de chaque. Du moins, si on laisse bien le champ libre aux développeurs.
Le problème du portage PC
Car il est un dernier élément du casse-tête à prendre en considération : les portages PC. Puisque les éditeurs spécialisés PC sont devenus rares, la plupart des portages sont développés par des acteurs externes comme Linuxydable, souvent indépendants ou appartenant à de petites structures. Et pour réussir à convertir un titre PS5 sur Windows, la tâche est loin d’être aussi simple que lorsque l’on convertit un .DOC en .PDF : « parfois, on doit vraiment faire appel à un redéveloppement complet du moteur. »
Oui, porter un jeu sur PC peut être considéré comme redévelopper le jeu. Cela s’explique par plusieurs faits. Les équipes internes utilisent parfois des technologies qui leur sont propres, et n’ont pas particulièrement envie de les partager avec des externes. Les kits de développement des consoles, utiles pour comprendre la manière dont un jeu fonctionne ou les librairies qu’il utilise, ne sont pas forcément partagés. Et surtout, il faut réussir à convertir certaines fonctions vers des outils complètement différents, comme la librairie libre Vulkan ou DirectX 12 pour ne citer qu’eux. Et ce quand les responsables du portage ont accès au code source, ce qui n’est pas forcément gagné non plus selon Linuxydable.
« Les cas principaux d’un mauvais portage sont souvent le manque de budget et des deadlines trop proches. » Manque de temps, manque d’argent, manque de partages des informations ; pour les éditeurs, les versions PC sont bien souvent les maillons faibles de la chaîne, dont on ne s’occupe qu’à distance et qu’on ne surveille que d’un œil. Mais le problème va plus loin encore, puisque les acteurs ayant les connaissances de réaliser des portages efficaces se font de plus en plus rares : « Il y a un manque d’ingénieurs, tout simplement. L’apprentissage, le cursus scolaire, n’existent pas. […] Beaucoup sont autodidactes. »
La situation épineuse des PC gamers
Et voilà tout ce qui pourrait faire en sorte que vos PC gamers deviennent très rapidement obsolètes si vous n’avez pas conscience de la petite révolution en cours sur ce segment. Alors que les PS5 et Xbox Series X ont la mainmise sur l’innovation et sont les plateformes leaders du développement, les PC commencent à peine à rattraper leur retard. Mais pour cela, ils doivent forcément passer par une mise à jour architecturale presque complète de leur configuration, où le ray tracing est un minimum optimisé, la carte graphique est compatible avec le Resizable BAR, et l’espace de stockage est assez rapide pour être utilisé comme source de données par le GPU. En prime, nous ne pouvons pas particulièrement compter sur une amélioration des portages PC, un secteur du développement qui n’a pas accès aux ressources, au temps et au budget nécessaire pour réaliser un bon travail. Sans compter le manque d’ingénieurs spécialisés dans ce domaine si particulier.
Ce même domaine qui va recevoir bientôt des versions consoles optimisées pour cette nouvelle architecture boostée au PCIe 4.0 et au ray tracing, et qui va devoir réussir la tâche herculéenne de porter ce nouveau rendu sur de plus vieilles plateformes. Il n’y a qu’à voir l’état des dernières versions PC sorties en date pour le déterminer : le travail ne sera pas proprement fait. Auquel cas, les PC déjà compatibles avec le ray tracing, le Resizable BAR et possédant un stockage ultra rapide seront obligatoirement avantagés pour les prochains jeux vidéo à sortir sur la plateforme.
La question restant en suspens est aussi simple qu’elle peut être dévastatrice : est-ce le cas de votre config actuellement ?
Envie de rejoindre une communauté de passionnés ? Notre Discord vous accueille, c’est un lieu d’entraide et de passion autour de la tech.
3 technologies qui vont rendre vos PC gamers obsolètes - Frandroid
Read More
No comments:
Post a Comment