Toute l'actualité Gaming, Esports et jeux vidéo sur consoles et PC. Toutes les news des jeux fraîchement servies par la rédaction du site de référence : annonces, sorties, bons plans... ne manquez plus une info essentielle. Votre Magazine #1 des Jeux Vidéo. News, tests, émissions, trailers, vidéos, soluces et astuces.

Sacred 2 : L’interview 1080p/Tech

Sacred 2 : L’interview 1080p/Tech

Suite à la discussion technique approfondie de samedi dernier avec Studio Liverpool, développeur de WipEout HD, j’ai décidé de contacter un certain nombre d’autres codeurs de console ayant une expérience de travail sur les jeux vidéo 1080p. L’objectif était simple : discuter des défis techniques plus approfondis associés au codage pour la résolution dite « Full HD ».

Le développeur de Sacred 2, Tobias Berghoff, a travaillé directement sur le moteur de rendu 1080p de la version PlayStation 3 du jeu et a eu toute une gamme d’idées intrigantes sur le processus. Le projet sur lequel il a travaillé est intéressant dans la mesure où, contrairement à WipEout HD et à la majorité des titres PS3 compatibles 1080p, il s’agit d’un jeu multiplateforme : Sacred 2 est disponible sur PC, PlayStation 3 et Xbox 360, les deux versions de console prenant en charge une résolution maximale de 1920×1080 . Auparavant, nous avions rassemblé cette analyse des performances du jeu dans tous les modes pris en charge, et il est intéressant de noter que même si le jeu fonctionne en interne avec des profils pour 720p et 1080p, la résolution HD inférieure n’est déployée qu’à l’échelle réduite pour la définition standard. jouabilité.

Si certaines questions vous semblent familières, c’est parce qu’un certain nombre d’entre elles ont été initialement envoyées à plusieurs développeurs simultanément, l’idée de départ étant que la sortie de WipEout HD : Fury s’accompagnerait d’un état des lieux plus général en ce qui concerne Jeu sur console 1080p. Cependant, la multitude de choses que j’ai récupérées était tout simplement trop volumineuse et trop intéressante pour être modifiée, et les questions de suivi ont fourni encore plus de matériel de qualité. Ainsi, selon l’interview de Studio Liverpool, ce que nous avons ici est l’interview complète et intégrale : une discussion technique à 100 % – exactement comme nous l’aimons chez Digital Foundry.

Digital Foundry : Compte tenu du nombre de personnes qui utilisent encore des téléviseurs SD, quel était le raisonnement derrière le passage au 1080p intégral ? N’y a-t-il pas un sentiment que le jeu est quelque peu sur-conçu?

Tobias Berghoff : C’était un processus très progressif, pour être honnête. Lorsque le travail sur la version Xbox a commencé fin 2006, l’objectif de performances était de 720p avec 2xMSAA. La version PC était déjà assez avancée, graphiquement, et elle était très gourmande en performances. De plus, nous n’avions aucune expérience sur la plate-forme, donc un peu de conservatisme était une bonne idée.

Le développement sur la version PS3 a commencé au milieu de 2007 et nous l’avons davantage considéré comme une expérience. Il y avait toutes ces histoires d’horreur sur le développement de la PS3 qui circulaient dans l’industrie à l’époque, nous n’étions donc pas vraiment sûrs de pouvoir le faire fonctionner. Nous ne l’avons pas annoncé avant une année complète, afin que nous puissions toujours l’annuler facilement si la plateforme s’avérait trop difficile.

Comme nous l’avions prévu, les performances sur les deux plates-formes se sont avérées assez problématiques. Nous avons hérité d’un moteur de rendu avancé de la version PC, qui produit des temps d’image de 100 à 200 ms sur la 360 et environ 100 ms de plus sur la PS3. Après quelques vaines tentatives d’optimisation, l’équipe graphique Xbox a proposé un moteur de rendu différé, qui a été la première percée majeure en matière de performances. Nous n’en étions pas tout à fait là, mais la version 360 était définitivement capable de rendre en 720p.

Nous nous serions probablement arrêtés ici s’il n’y avait pas eu la version PS3. Même avec le moteur de rendu différé, nos temps de trame monteraient toujours dans la plage de 100 ms +, s’il y avait suffisamment de sources lumineuses à l’écran. Le problème était le pixel shader utilisé dans la passe différée, qui effectue tout le calcul d’éclairage en une seule fois, ce qui nous permet de faire un éclairage gamma correct avec jusqu’à 12 points lumineux (dont huit peuvent avoir des shadowmaps) plus le soleil et son ombre -carte. Un ingénieur de Sony a un jour fait remarquer qu’il “produit de très jolies images mais qu’il s’agit probablement du pixel shader le plus lourd que j’aie jamais vu”. Le problème résidait dans la nécessité de déterminer dynamiquement quelles sources de lumière pouvaient être ignorées pour un pixel donné. Xenos a très bien géré cela, RSX est une GeForce 7 et n’est donc pas fan de branchement.

Étant le seul responsable du rendu sur la PS3, cela m’a donné pas mal de maux de tête. La solution consistait à utiliser les SPU pour déterminer quelles sources lumineuses affectent quel pixel, puis à découper le passage différé en blocs de 64 pixels, de sorte que tous les blocs touchés par les mêmes lumières puissent être dessinés en même temps.

. Avec des shaders de pixels optimisés pour le nombre réel de sources de lumière, cela place la PS3 bien en avance sur la Xbox ; assez loin pour que le 1080p devienne une possibilité.

Je pense que c’était essentiellement le point où nous sommes allés “Ohhhh! Shiny!” et essayé de le faire fonctionner. Nous avions déjà effectué des tests de rendu en 1080p et il était assez bien établi qu’avec toute notre herbe et notre feuillage testés en alpha, l’amélioration de la qualité de l’image allait être immense. C’est vraiment une sorte de « nuit et jour ».

Pendant un certain temps, il semblait même que la PS3 allait être en 1080p et que la Xbox ne l’était pas, jusqu’à ce que Stephan Hodes – le principal programmeur graphique Xbox – écrive une version légèrement moins folle du système décrit ci-dessus pour la Xbox, nous apportant à peu près à parité (**).

Alors, est-ce sur-conçu? Peut-être. Nous n’avons pas atteint les objectifs de performances finaux et sur la PS3 – qui est la seule version que je connais suffisamment bien pour en parler – c’est presque entièrement un problème de processeur. Ainsi, le rendu est certainement plus rapide que le code côté CPU sur cette plate-forme, ce qui est un peu gâché. Je dois cependant souligner qu’au moins sur la PS3, faire fonctionner 720p avec 2xMSAA à 30FPS n’aurait pas été beaucoup plus simple que d’aller jusqu’à 1080p. Donc, déplacer le temps de développement du moteur de rendu vers le code du jeu n’aurait pas aidé.

Digital Foundry : Pouvez-vous expliquer en termes simples quels sont les principaux défis entre le rendu en 720p et en 1080p ?

Tobias Berghoff : 2,25 fois le nombre de pixels. Vraiment, c’est tout. Sur la PS3, vos cibles de rendu deviennent plus grandes, ce qui réduit votre budget VRAM et augmente potentiellement la pression sur le streaming de texture. Pour nous, cela a vraiment compliqué le traitement SPU dont j’ai parlé plus tôt. Nous devons parcourir tout le tampon de profondeur, il doit donc être copié de la VRAM vers la RAM système. Si vous effectuez un rendu en 720p, vous avez besoin d’un tampon de 3,5 Mo pour cela. En 1080p, c’est 8 Mo, ce qui représente beaucoup de mémoire supplémentaire.

J’ai donc fini par couper le tampon en deux, en demandant à RSX de copier le côté gauche dans la RAM système, en le traitant avec le SPU, puis en répétant cela avec le côté droit. Ce que vous ne voulez vraiment pas, c’est que votre GPU soit inactif, donc pendant que les SPU étaient occupés, RSX devait également effectuer des travaux. Cela nécessitait quelque chose qui ressemblait à un système d’interruption, qui permet aux SPU de dire à RSX de copier la seconde moitié du tampon de profondeur, le tout sans implication du code de rendu côté PPU et sans savoir sur quoi RSX travaille réellement à ce moment-là. Vous pouvez donc finir par faire des choses assez intéressantes pour économiser quelques Mo de RAM.

Sur le 360, la situation est un peu différente, car vos cibles de rendu sont stockées dans l’eDRAM (les 10 Mo de RAM ultra-rapide supplémentaires connectés au GPU), donc des cibles plus grandes signifient plus de tuiles et plus de résolutions (copie de l’eDRAM vers le système RAM). Si vous avez vraiment besoin des cibles complètes en tant que textures quelque part, vous rencontrez bien sûr les mêmes problèmes de mémoire.

Le problème majeur est cependant le traitement des pixels. Plus la résolution est élevée, plus il est important d’avoir des shaders de pixels rapides et plus la bande passante mémoire est consommée par les ROP (unités de sortie de rendu). Mais si vous comparez un jeu en 1080p30 avec un jeu en 720p60, les différences seront dans le code du jeu, pas dans le moteur de rendu. *

Ceci est inspiré par le travail effectué par les bonnes personnes de l’équipe PhyreEngine de SCEE. **

Il s’avère que Naughty Dog a une technologie comparable “moins folle” dans Uncharted.

Découvrez aussi plus d’articles dans nos catégories Astuce, Consoles ou encore Jeux.

Merci pour votre visite on espère que notre article Sacred 2 : L’interview 1080p/Tech
, pour nous aider, on vous invite à partager l’article sur Facebook, pinterest et whatsapp avec les hashtag ☑️ #Sacred #Linterview #1080pTech ☑️!

You might also like
Leave A Reply

Your email address will not be published.