L'année dernière a été un désastre pour les jeux PC - voici comment les choses doivent changer

L'année dernière a été un désastre pour les jeux PC - voici comment les choses doivent changer

Nœud source: 1893511

2022 a été une année difficile pour les ports PC. Entre les problèmes de performances saccadées et les problèmes d'expérience utilisateur exaspérants, j'étais presque brisé en tant que critique pour Digital Foundry. Pour commencer l'année avec une nouvelle ardoise, j'ai pensé que ce serait une bonne idée de dresser une sorte de liste de contrôle des meilleures pratiques en matière de création d'un port PC. Pour générer cette liste de choses à faire et à ne pas faire, j'ai fait appel à mon expérience dans la révision de centaines de titres au cours de mes quatre années chez Digital Foundry.

La liste n'est certainement pas exhaustive car j'essaie de me concentrer sur les aspects essentiels d'un port PC. Il existe de nombreuses autres meilleures pratiques que je peux suggérer au-delà de cela - pas de lanceurs à l'intérieur des lanceurs, par exemple. Aucune connexion à d'autres plateformes en ligne pour lancer un jeu sur Steam en serait une autre. J'aimerais également voir une sorte de normalisation à l'échelle de l'industrie dans la présentation des spécifications recommandées qui informent réellement l'acheteur potentiel du type de système dont il aura besoin pour bien exécuter le jeu - le système actuel n'a aucun sens sans le contexte de résolution et attentes en matière de performances. De toute évidence, il y a beaucoup à faire, mais mon objectif ici est simplement de fournir un port PC puissant et compétent.

Certaines de mes suggestions sont plus rigoureuses sur le plan technique, d'autres sont des fruits à portée de main : mais surtout, elles sont toutes réalisables et j'ai des exemples pour les étayer. Je recommanderais également de regarder la vidéo - quand tout se réunit dans un port PC bien déployé, c'est comme de la poésie. Le menu des paramètres de Days Gone est étonnamment bon, par exemple. Mais pour notre premier point, nous allons commencer par le gros.

Alex Battaglia présente ses suggestions pour améliorer l'état des ports PC, après une terrible année 2022.

1. Éliminer le bégaiement de la compilation des shaders

Vous avez peut-être été au courant de mon #StutterStruggle au cours de la dernière année. C'est la situation où, quelle que soit la puissance de votre matériel PC, le jeu est régulièrement interrompu par un bégaiement introuvable dans les versions console du même jeu. L'une des plus grandes forces de la plate-forme PC est la diversité du matériel - mais cela signifie que les développeurs ne peuvent pas fournir de code de shader précompilé avec leurs jeux de la même manière qu'ils le font sur les consoles. Ce qui se passe dans une vaste gamme de jeux sur PC, c'est que ces shaders sont compilés pendant le jeu, car ils sont nécessaires. Pendant que cela se produit, le jeu se fige – entre 30 ms et une seconde complète de pause, selon le jeu et la puissance de votre processeur. La fréquence de ces bégaiements est généralement inacceptable dans les titres concernés.

Cela peut être éliminé, et la façon dont cela est réalisé n'est pas trop importante, honnêtement. Les shaders peuvent être compilés avec une étape de pré-compilation comme on le voit dans la collection Uncharted : Legacy of Thieves sur PC, ce qui vous fait attendre jusqu'à 10 minutes sur un processeur puissant et encore plus longtemps sur un processeur de milieu de gamme. Les shaders peuvent également être compilés de manière asynchrone en arrière-plan sur le CPU, comme on le voit dans Star Citizen et Horizon Zero Dawn. Un jeu peut également utiliser une combinaison de pré-compilation et de compilation asynchrone comme Spider-Man Remastered. Le fait est que tout doit être fait pour préparer un shader en le réchauffant d'une manière ou d'une autre avant qu'il ne soit requis.

Cet élément de la liste nécessite certainement une certaine rigueur technique et réflexion, mais c'est probablement l'élément le plus important de cette liste pour le moment, étant donné à quel point la situation a été désastreuse ces derniers temps. Un autre conseil que j'ai ici pour la compilation des shaders est que s'il y a une longue étape de pré-compilation et que vous craignez une mauvaise expérience utilisateur pendant qu'ils attendent, alors rendez l'étape de pré-compilation interruptible ou facultative, avec un avertissement que l'utilisateur bégayeront s'ils choisissent de ne pas attendre la précompilation. Modern Warfare 2 permet aux utilisateurs d'annuler et de recompiler les shaders quand ils le souhaitent en cliquant sur un bouton - et c'est une excellente conception.


Bégaiement de la compilation Shader dans Kena: Bridge of Spirits. L'explosion est un nouvel effet jamais vu auparavant, donc un nouveau code de shader est généré au milieu du jeu, provoquant ici un gel d'un peu moins de 200 ms.

2. Fournir des options graphiques visuellement réactives

Le menu des paramètres est une partie cruciale d'un port PC, mais c'est aussi un mystère complet pour la plupart des joueurs. Que font réellement les options ? Qu'est-ce que l'occlusion ambiante exactement ? Combien de performances puis-je économiser en modifiant les options ? La voie à suivre consiste à inclure un menu graphique qui offre un retour visuel réactif. Comme mentionné précédemment, le menu graphique de Days Gone est un chef-d'œuvre - sans doute le summum de la conception de menus graphiques.

Vous pouvez modifier les options dans le menu pendant que le monde du jeu est toujours rendu derrière le menu et dans le coin supérieur, il est possible de voir l'impact sur les performances de ce qui est modifié en temps réel. Je recommande sérieusement d'émuler ce style de menu graphique - il est important d'avoir un menu comme celui-ci ou celui trouvé dans Spider-Man Remastered qui est très similaire car il permet à l'utilisateur de voir les modifications apportées à la présentation graphique en temps réel donc ils peuvent facilement voir l'effet sur les visuels et les performances. Devoir entrer et sortir d'un menu, ou pire encore, recharger le jeu après un changement de paramètre rend presque impossible la modification significative des paramètres.

Si cela est problématique à mettre en œuvre, il existe des alternatives : inclure un texte descriptif, des indicateurs visuels et même des conseils de performance indiquant quel composant du PC est le plus sollicité par les paramètres modifiés. Gears 5 le fait sur PC et donne un bon aperçu de ce que font les options graphiques. De nombreux utilisateurs ont tendance à penser que les performances d'un jeu sont entièrement limitées par le GPU dont ils disposent, alors qu'en réalité, le processeur et la quantité de mémoire vidéo utilisée peuvent tout aussi être cruciaux pour obtenir de bonnes performances.


Les menus de paramètres graphiques interactifs qui vous montrent dans le gameplay quels sont les changements - et le coût des performances - sont la voie à suivre. Les menus de Days Gone sont un chef-d'œuvre.

3. Inclure une navigation de menu sensée et basée sur les conventions

Des milliers de jeux au cours des 30 dernières années sur PC ont eu des menus et pendant ce temps, de nombreuses conventions sont apparues – et il est important de s'en tenir à ce « langage » établi pour la navigation. Par exemple, ESC ou retour arrière doivent toujours vous faire sortir d'une page de menu. Les touches fléchées et même WASD devraient être utilisables pour naviguer dans un menu sans utiliser de souris. Alt + F4 devrait toujours quitter le jeu sur le bureau. Il y a bien sûr plus de ces conventions, mais l'essentiel est que les utilisateurs doivent pouvoir contrôler rapidement le menu du jeu, soit avec une souris, soit avec un clavier, et qu'il doit utiliser des commandes intuitives et établies.

4. Ne pas trop imbriquer les menus

Les options graphiques, la personnalisation des commandes ou d'autres éléments souvent activés doivent comporter trois menus au maximum, mais de préférence un ou deux. Par exemple, si vous souhaitez modifier la qualité d'un effet visuel, vous ne devriez pas avoir à accéder aux options, puis aux options vidéo, puis aux sous-pages singulières pour chaque type d'option graphique. Au lieu de cela, il devrait simplement aller dans les options, les options vidéo, puis voir la plupart, sinon la totalité, des options graphiques là-bas. Si possible, évitez également de faire défiler les écrans du menu des options. Le défilement peut être un peu lent et il masque parfois les options. Un bon exemple de menu sans défilement est vu dans Arma 3. Ce jeu évite le défilement en utilisant à la fois les côtés gauche et droit de l'écran et avec une taille de texte plus petite - il utilise l'espace de l'écran. Ceci est assez différent des options justifiées à gauche avec un grand texte que nous voyons dans de nombreux ports vers PC.

5. Le taux de rafraîchissement et la résolution doivent être des options distinctes

La liste des résolutions et des taux de rafraîchissement doit analyser la liste disponible des résolutions et des taux de rafraîchissement de Windows lui-même. Trop souvent, je charge un jeu juste pour constater que le taux de rafraîchissement du jeu n'est même pas répertorié et qu'un certain nombre de résolutions sont manquantes. De plus, un utilisateur doit contrôler le moment où le taux de rafraîchissement change en l'appliquant : soit en sortant du menu, soit en appuyant sur "appliquer". N'appliquez pas automatiquement une résolution après sa modification : par exemple, dans les titres Capcom récents, si vous déplacez votre souris hors de l'option de résolution, elle passe automatiquement à la dernière sélectionnée, même si vous ne le souhaitez pas.

Un bon contre-exemple peut être trouvé dans Marvel's Spider-Man Remastered, qui le fait de manière plus logique - l'option de résolution est séparée et montre chaque résolution répertoriée par Windows, puis il existe une autre option pour modifier entièrement le taux de rafraîchissement de celle choisie. résolution - la résolution n'est appliquée que lorsque l'utilisateur le souhaite. Les jeux qui limitent la résolution et les options d'actualisation aux paramètres actuels du bureau Windows constituent un problème particulier qui doit être éliminé.


Marvel's Spider-Man Remastered a raison - options de résolution et de fréquence de rafraîchissement indépendantes... et contrôle total sur les modes fenêtré et plein écran.

6. Inclure une option de champ de vision (FOV)

Un champ de vision étroit se trouve souvent dans les jeux sur console pour créer des ambiances claustrophobes ou pour économiser sur les performances – et peut littéralement rendre les utilisateurs de PC malades. Une option de champ de vision rend le jeu réellement jouable pour de nombreux utilisateurs où le FOV par défaut aurait pu être trop étroit. Une fois de plus, le système de menus Days Gone est un plaisir à utiliser ici - lorsque vous modifiez la variable FOV, la vue en arrière-plan change en temps réel, permettant à l'utilisateur de régler ses préférences précises.

7. Inclure des rapports d'aspect et des fréquences d'images variables

Dans l'ensemble, cela devient une pratique courante, mais il existe encore des jeux qui ne s'adaptent pas à l'énorme variation des types d'affichage ouverts aux utilisateurs de PC. Tous les lecteurs PC n'utiliseront pas un moniteur 16:9 verrouillé à 60 Hz ou 120 Hz. Beaucoup joueront sur des moniteurs ultra larges ou sur des moniteurs pouvant aller jusqu'à 240 Hz ou même plus. La prise en charge de ces rapports d'aspect et taux de rafraîchissement signifie offrir à ces utilisateurs une expérience confortable qu'ils attendent de leur matériel.

Le point le plus important ici est que le PC est une plate-forme avec un matériel variable et pour prendre en charge correctement le PC, rien ne doit être codé pour être une expérience fixe comme c'est le cas avec les consoles. Les utilisateurs voudront jouer à des jeux à n'importe quelle fréquence d'images que vous imaginez ou à n'importe quel rapport d'aspect que vous devriez imaginer : j'adore jouer à des jeux modernes sur un moniteur CRT 4:3, par exemple. Ainsi, lier des éléments tels que la logique du jeu à la fréquence d'images ou l'interface utilisateur à des grilles de pixels fixes est catégoriquement une mauvaise idée.

8. Incluez des options v-sync à demi, troisième et quart de taux avec une cadence de trame cohérente

De nombreux jeux ont des limiteurs de fréquence d'images, mais ceux-ci ont souvent une très mauvaise cadence d'images avec la synchronisation v activée, où la fréquence d'images moyenne peut être le nombre choisi, mais les temps d'image constituant cette fréquence d'images sont incohérents, ce qui conduit à une mauvaise expérience visuelle avec une latence incohérente.

Un bon exemple de la façon de le faire correctement se trouve dans Cyberpunk 2077 - ici, il existe une option de limiteur d'images distincte avec une limitation arbitraire de la fréquence d'images, mais il existe une v-sync complète, une demi-taux de rafraîchissement v-sync, un tiers de taux v-sync et quart de taux v-sync. Avec une telle option, les utilisateurs peuvent obtenir une cadence de trame parfaite lorsqu'ils limitent leur FPS, et ils peuvent faire des choses comme jouer à 40 ips à 120 Hz, ce qui est une fonctionnalité mortelle pour ceux qui recherchent une fréquence d'images supérieure à 30 mais qui veulent augmenter le paramètres.


Les options de synchronisation v réglables avec une cadence de trame cohérente permettent des choses comme celle-ci – un Cyberpunk 2077 au maximum fonctionnant verrouillé à une fréquence constante de 40 images par seconde (25 ms par image) dans un conteneur de 120 Hz.

9. Inclure plusieurs niveaux de qualité pour les effets lourds

De simples bascules marche/arrêt pour les fonctionnalités lourdes comme le lancer de rayons ne suffisent pas : j'aimerais voir des options basse, moyenne et haute pour chaque effet RT. Un exemple de la façon de ne pas le faire se trouve dans The Witcher 3 Complete Edition sur PC, où il n'y a que des options d'activation et de désactivation pour les différents effets de lancer de rayons. Cela a conduit les utilisateurs à créer des préréglages de mod personnalisés pour le RTXGI présenté dans le jeu afin de réduire sa qualité afin de le faire mieux fonctionner sur des GPU compatibles RT de spécifications inférieures. Ceci est un exemple évident d'une option qui devrait être dans le menu graphique. Le contrôle est un autre exemple où les optimisations de la console – les réflexions RT en damier – ne parviennent jamais au PC. Une fonctionnalité qui fonctionne pour les consoles a toujours une utilité sur PC également.

De même, les effets RT doivent également évoluer pour s'adapter aux GPU haut de gamme - un exemple de la façon de ne pas le faire se trouve dans les jeux Capcom sur le moteur RE, où le réglage le plus élevé pour le lancer de rayons dans le jeu est d'une qualité étrangement basse. Marvel's Spider-Man Remastered a raison : vous pouvez contrôler la résolution de l'effet de réflexion RT, vous pouvez contrôler la qualité des modèles dans les réflexions RT et, surtout, vous pouvez également contrôler la distance et la densité des objets en cours de lancer de rayons. contre, ce qui permet aux utilisateurs de contrôler l'effet du lancer de rayons sur les performances de leur processeur. Pouvoir contrôler la plage et la densité BVH est crucial à l'ère moderne où la vitesse du processeur n'augmente pas aussi rapidement que par le passé.

10. Inclure des fonctionnalités de console telles que la mise à l'échelle dynamique de la résolution

La mise à l'échelle de la résolution dynamique n'est pas impossible sur PC - il existe de nombreux exemples de bon DRS sur PC. Titanfall 2 possède l'un des meilleurs scalers de résolution dynamique et il est complet sur PC, fonctionnant comme la version console. Il s'agit d'un jeu DX11, ce qui signifie que Respawn a implémenté un schéma de résolution dynamique d'une qualité incroyablement élevée sur PC, même s'ils avaient techniquement moins de contrôle sur les ressources PC disponibles que DX12 ou Vulkan pouvaient leur offrir. Si une telle implémentation de haute qualité est disponible dans ce scénario, il n'y a pas vraiment de bonne excuse pour qu'une version console d'un jeu ait le DRS mais que la version PC l'omette.


Le système DRS de Titanfall 2 a été porté à partir des versions console mais a ajouté des fonctionnalités sur PC. C'est un brillant exemple de la façon d'implémenter la fonctionnalité - et sa qualité de jeu est fantastique.

11. Inclure le HDR et le son surround si les versions de la console les prennent en charge

Tous les PC ne sont pas branchés sur un moniteur de bureau standard avec l'utilisateur portant des écouteurs - de nombreuses personnes utilisent leur PC avec des téléviseurs avec des configurations de cinéma maison, où le HDR et le son surround sont prédominants. La règle de base est la suivante : si vous créez une fonctionnalité sur console, faites-la sur PC.

12. Inclure les paramètres équivalents à la console en option

Si le jeu est sur console et dispose de paramètres de console personnalisés pour qu'il fonctionne correctement, incluez également un paramètre de "console" facilement identifiable sur PC. Le récent God of War PC Port l'a très bien fait : là, les paramètres de la console sont dits "d'origine" et le jeu démarre avec ces paramètres par défaut. C'est très intelligent car les paramètres choisis pour la version console d'un jeu offrent généralement un aspect visuel suffisamment bon pour des performances acceptables.

Mes guides de paramètres optimisés finissent souvent par générer des paramètres presque identiques à ceux des versions de la console. Les options graphiques d'un jeu doivent exposer les paramètres de la console de manière transparente. En effet, les paramètres équivalents à la console sont les choix du développeur pour le meilleur « rapport qualité-prix » sur un système de milieu de gamme, alors pourquoi ne pas offrir les avantages de cette sagesse aux joueurs PC également ? Ces paramètres offrent également un excellent point de départ aux utilisateurs de PC pour les ajuster en fonction des capacités de leur propre matériel.

13. Prend en charge toutes les principales technologies de reconstruction d'image

Chaque fournisseur de GPU a sa propre technique de reconstruction d'image : Nvidia a DLSS, Intel a XeSS et AMD a FSR2. Chacun d'entre eux a tendance à mieux fonctionner sur son matériel respectif, et ils utilisent tous des entrées similaires lorsqu'ils sont connectés à un moteur de jeu. En 2023, il ne devrait pas être acceptable qu'un jeu se lance avec le support d'une seule de ces techniques de reconstruction d'image, mais pas des autres. Et je ne pense vraiment pas que le fournisseur de GPU qui sponsorise le jeu ait de l'importance : un titre sponsorisé par AMD devrait toujours prendre en charge XeSS et DLSS, alors qu'il n'y a aucune raison pour qu'un titre pris en charge par Nvidia ne prenne pas en charge XeSS ou FSR2 - d'autant plus qu'il y en a encore beaucoup utilisateurs sur les GPU des séries GTX 900 et GTX 1000 qui peuvent exploiter ces technologies.

Dans cet esprit, il est décevant de voir que le protocole Callisto n'est livré qu'avec FSR2 lorsque Unreal Engine prend en charge toutes les technologies de mise à l'échelle. Il est tout aussi frustrant de voir A Plague Tale: Requiem ne fournir un support DLSS que lorsqu'un développeur de la qualité d'Asobo peut facilement s'adapter à des technologies similaires. Ce qui relie ces jeux, c'est qu'ils poussent vraiment fort les graphismes - et tout type de technologie d'accélération qui ouvre la porte à des performances plus fluides doit être adopté.


L'intégration de FSR2 et DLSS2 dans les jeux prenant en charge la mise à l'échelle de la reconstruction d'image devrait être une évidence - et inclure également le XeSS d'Intel. Ce sont des fonctionnalités qui tuent qui ne devraient pas être limitées à la mise en œuvre d'un seul fournisseur de GPU.

Comme je l'ai dit au début de cet article, 2022 a été une année vraiment désastreuse pour les jeux sur PC où moi-même et l'équipe avons atteint le point où nous redoutions l'arrivée d'un nouveau port PC. Elden Ring est arrivé dans un état assez désastreux, de nombreux titres Unreal Engine 4 nous sont parvenus avec des problèmes de bégaiement insupportables, aboutissant à l'arrivée d'une version littéralement injouable de The Callisto Protocol.

Je présente ces suggestions dans l'espoir que le profil de Digital Foundry puisse influer sur le changement - et pour être juste, il y a eu des signes positifs. Le protocole Callisto sur PC a toujours de profonds problèmes d'utilisation du processeur, mais le bégaiement appartient au passé grâce à une étape de compilation de shader ajoutée au jeu après le lancement, exactement comme je le suggère dans le premier point ci-dessus. D'autres titres UE4 comme Sackboy: A Big Adventure et High on Life ont également reçu des mises à jour post-lancement qui tentaient de résoudre les problèmes de compilation des shaders. En discutant des mises à niveau Unreal Engine 5.1 de Fortnite, j'ai pu parler directement avec Epic Games de ce problème et j'espère que les choses s'amélioreront.

Cependant, alors que #StutterStruggle de DF est à l'avant-garde des problèmes, le fait est que résoudre ce problème n'est qu'un des points clés parmi plusieurs qui devraient être abordés. Il n'y a pas de « détenteur de plate-forme » unique dans l'espace PC, de sorte que les meilleures pratiques et les exigences techniques réelles ne peuvent pas être appliquées de la même manière qu'elles le sont sur les consoles Sony, Microsoft et Nintendo. Même ainsi, bien que la liste ci-dessus puisse sembler beaucoup de travail, mais en réalité, il s'agit d'accorder le même type d'attention à un port PC qui est souvent accordé aux versions console et de fournir un jeu qui ne fonctionnera pas seulement bien sur le matériel informatique d'aujourd'hui, mais résistera à l'épreuve du temps dans les décennies à venir.


Pour voir ce contenu, veuillez activer les cookies de ciblage.

Horodatage:

Plus de Eurogamer