Tuto n°01 : Réglages graphiques des jeux vidéos

Dernière modification :

Introduction

Salut, c’est 3 potes !

Dans ce tuto, nous allons aborder les réglages graphiques dans les jeux-vidéos, et toutes les appellations obscures qui y sont liées. Le 1080p@60fps sera un jeu d’enfant. Genre Adibou. Ou Doom. Ouais, on n’a pas tous eu la même enfance.

Préambule

Ici seront détaillées les options graphiques les plus courantes rencontrées dans les jeux-vidéos. Une idée de l’impact de chaque option graphique sur le CPU, le GPU et la VRAM sera donnée à titre indicatif et approximatif. Tu pourras ainsi savoir, en fonction des performances de ton bouzin, quelles options tu peux/dois modifier.

En effet, chaque option ne sollicite pas de la même manière le processeur ou la carte graphique. Le premier est principalement dédié à la physique et doit donc gérer, entre autres, les trajectoires, les collisions et la position de tous les objets à l’écran. La seconde a plutôt pour rôle de s’occuper du rendu esthétique de la scène et jouera donc avec les textures, brouillards, ombres, lumières et autres. On comprend ainsi pourquoi les cartes graphiques sont plus sollicitées quand on demande des qualités élevées et des hautes définitions, alors que c’est plutôt le CPU qui prend cher quand le nombre d'objets à l'écran et de FPS sont élevés.

Il existe énormément d’options plus spécifiques à chaque jeu (brouillards, nuage, qualité de l’eau, qualité des cheveux, plaque dentaire, …) et ça serait extrêmement fastidieux de toutes les lister, je te laisse les tester individuellement. Je suis pas payé assez cher pour ça.

À la fin, quelques benchmarks te donneront des indications sur l’effet des niveaux de qualité et des différentes options sur les FPS globales.

Évidemment, quelques images agrémenteront notre voyage.

Glossaire et abréviations

Mode d'affichage

Les jeux proposent parfois trois modes d’affichage : Plein écran, Fenêtré, ou Fenêtré sans bordure. Comment choisir ? Plouf plouf, ce sera toi...

En résumé, pour des performances maximales en jeu, privilégie le plein écran.

API graphique

Nope, rien à voir avec les pommes. C’est plutôt une Interface de Programmation Applicative, ou Application Programming Interface en anglais. Ouaip, je sais, c’est pas plus clair.
En gros c’est une couche logicielle qui fait l’interface entre le moteur graphique du jeu et le pilote de la carte graphique, et qui propose des fonctions prêtes à l’emploi pour faciliter la vie des développeurs. On peut schématiser la chaine de commande ainsi :

Jeu → Moteur graphique → API → Pilote → GPU

Du côté des API « classiques » on peut citer :

Or, ces API sont assez peu efficaces pour exploiter les processeurs avec de nombreux cœurs (avec plus que 1 cœur en fait). Aujourd’hui les développeurs se tournent de plus en plus vers des API dites de « bas niveau ». Elles permettent de faire passer des instructions directement au GPU sans passer par les pilotes, en plus de mieux répartir le boulot entre les différents cœurs du CPU. Tout ça permet d'optimiser la gestion des CPU et GPU qui sont alors un peu plus enclins à faire péter les FPS.

Les deux API bas niveau du moment sont :

D'après un test de Cowcotland sur Ghost Recon Breakpoint qui compare les FPS sous DirectX 11 ou Vulkan (lien ici), la RX 5700 XT en FHD passe ainsi de 95 à 114 FPS grâce à l'API de bas niveau. Bref, tout bénef. Du moins, en théorie. Le même test a en effet mis en évidence quelques problèmes de « sur-sollicitation mémoire » des cartes entrée de gamme (RX 5600 XT en l’occurrence), ce qui entrainait une baisse des FPS en passant de DirectX 11 à Vulkan

Si les options du jeu te laissent le choix, je te conseille donc de tester ce que ça donne avec une API de bas niveau. Le gain peut être non-négligeable.

Synchronisation verticale

Voilà un vaste sujet, qui englobe le V-sync, le FastSync, et le Variable Refresh Rate. À la limite ça mériterait un tuto à part entière. Et Bim ! C’est le Tuto n°02. Z’avez vu comment on se fout pas de vot’ gueule ? Pour les plus feignants impatients, voilà les grandes lignes :

Aucune synchronisation verticale

La carte graphique et l’écran travaillent chacun de leur côté. L’input lag est minimal, mais cela implique la présence de tearing et de stuttering pas forcément très agréable visuellement.

V-Sync

La carte graphique se synchronise avec l’écran. Le tearing est éliminé mais au prix d’un input lag important, et d’un risque plus élevé de stuttering.

Triple buffering

Utilisé conjointement au V-Sync, le triple buffering (ou tampon triple en français) réduit le stuttering mais augmente d’avantage l’input lag.

FastSync

Le FastSync est une amélioration du V-Sync qui en réduit l’input lag. Il n’est supporté que par les cartes graphiques NVIDIA à partir de la GTX 960.

Variable Refresh Rate (G-sync/Freesync)

Le Variable Refresh Rate (VRR) est la meilleure solution de synchronisation à ce jour. C’est l’écran qui se synchronise avec la carte graphique, ce qui élimine tearing et stuttering, en plus d’assurer un input lag minimal. Contrairement aux technologies précédentes, le VRR est une solution matérielle qui requiert un écran et une carte graphique compatibles.

Limite de FPS

Certains jeux permettent de limiter le nombre de FPS. Mais pourtant, plus il y a de FPS et mieux c'est, non ? Eh ben pas forcément.

Ce ne sont que quelques exemples, à toi de voir si tu peux y trouver un avantage, ou si tu préfères faire péter le compteur de FPS.

Anti-aliasing (AA) (Anti-crénelage)

L’aliasing, ou « crénelage » en bon François, est une conséquence de la nature même des pixels : ils sont carrés. Donc pour dessiner des courbes ou des lignes inclinées, spas pratique.

Pour éviter l’aliasing les logiciels passent par des dégradés artificiels. Exemple sur cette magnifique représentation :

Anti-aliasing zoom
Crédit image : Wikipédia

À gauche, un « A » dessiné avec des pixels noirs. C’est moche, mais le PC fait ce qu’il peut avec ce qu’il a. À droite, le même « A » ayant subi un traitement d’anti-aliasing. Le but est de créer des dégradés pour que notre œil perçoive des contours doux. Alors forcément là non, j’ai zoomé pour l’exemple. Mais avec une taille « normale » ça passe un peu mieux.

Anti-aliasing normal

Et c’est ainsi que toutes les formes géométriques des jeux-vidéos apparaissent un peu plus lisses. C’est beau les maths.

Il existe plusieurs techniques d'anti-aliasing (AA) que je range dans trois catégories :

Plusieurs techniques sont parfois combinées pour améliorer le résultat final. Voyons ce que ça donne.

Les AA en correction

Dans ce cas, on construit une image, dont la définition correspond à celle de ton écran, et qui est naturellement crénelée. On vient alors flouter les zones crénelées pour les adoucir, un peu comme un filtre insta en fait. Il existe plusieurs anti-aliasings pour cela :

(1) : Fast Approximate Anti-Aliasing
(2) : MorphoLogical Anti-Aliasing
(3) : Subpixel Morphological Anti-Aliasing
(4) : Temporal Anti-Aliasing
(5) : Deep Learning Anti-Aliasing

Les AA en sur-échantillonnage

Dans ce cas, on construit une image d'une définition supérieure à celle de ton écran. En réduisant sa taille jusqu'à la définition d'écran, le crénelage disparait naturellement. Il existe plusieurs anti-aliasings pour cela :

(6) : Super Sampling Anti-Aliasing
(7) : Full Screen Anti-Aliasing
(8) : Dynamic Super Resolution
(9) : Virtual Super Resolution
(10) : Deep Learning Dynamic Super Resolution
(11) : Multi-Sampling Anti-Aliasing
(12) : Coverage Sampling Anti-Aliasing
(13) : Enhanced Quality Anti-Aliasing
(14) : Multi-Frame Anti-Aliasing

Les AA en sous-échantillonnage

Dans ce cas l'objectif n'est pas de perdre un peu de performance pour améliorer la qualité d'image, mais le contraire : on dégrade légèrement la qualité de l'image pour gagner en performance (entre +30% et +100% de FPS en général). En pratique, l'image est construite dans une définition inférieure à celle de l'écran, puis elle est agrandie. Normalement le résultat de ce type d’opération est assez dégueu, en appliquant un AA et en se basent sur des modèles plus ou moins élaborés, on arrive à obtenir une image finale relativement propre. Chaque constructeur a sa techno :

(15) : Deep Learning Super Sampling
(16) : FidelityFX Super Resolution
(17) : Radeon Super Resolution
(18) : Xe Super Sampling

Comparaison entre FSR 1, FSR 2 et DLSS 2 : https://www.comptoir-hardware.com/actus/cartes-graphiques/46082-fsr-1-vs-fsr-2-vs-dlss-2-sur-plein-de-gpu-differents-.html

Résumé

Comparaisons graphiques

Quelques images tirées de Ghost Recon Wildlands pour illustrer tout ça (Crédits images : Ubisoft).

AA désactivé
AA désactivé
FXAA
FXAA
SMAA
SMAA
TAA
TAA

Ombres

Le calcul des ombres détermine l’intensité lumineuse des pixels à l’écran en fonction de la position des objets et des éventuels obstacles par rapport aux sources de lumière. Ce réglage est donc plus ou moins gourmand en fonction de la qualité des ombres recherchée et du niveau de détail des obstacles.

Comparaisons graphiques

Quelques images tirées de Ghost Recon Wildlands pour illustrer tout ça (Crédits images : Ubisoft).

Ombres standard
Ombres standard
Ombres élevées
Ombres élevées
Ombres ultra
Ombres ultra

Occlusion ambiante (Ambient Occlusion - AO)

Le principe de l’occlusion ambiante est de simuler une « fausse » ombre autour des petits objets du décor, qui ne dépend pas des sources de lumière et des obstacles. L’image gagne ainsi en profondeur tout en étant beaucoup moins gourmand que de calculer des « vraies » ombres pour chaque brique, caillou, fleur, …

SSAO (Screen Space Ambient Occlusion)

Ancienne technologie d’occlusion ambiante, pas forcément très fidèle.

HBAO+ (Horizon Based Ambient Occlusion) / HDAO (High Definition Ambient Occlusion)

Améliorations du SSAO développées par NVIDIA et AMD respectivement.

Comparaisons graphiques

Quelques images tirées de Ghost Recon Wildlands pour illustrer tout ça (Crédits images : Ubisoft).

AO désactivé
AO désactivé
SSBC
SSBC (SSAO sauce Ubi)
HBAO+
HBAO+

Ray-Tracing en temps réel

Le Ray-Tracing en temps réel est une approche beaucoup plus fidèle de la gestion de la lumière, car plus naturelle. Chaque source lumineuse émet des « rayons » qui interagissent avec chaque objet, créant ombres, reflets, et autres effets de transparence. L’objectif est de rentre inutile les autres modes de calcul des ombres, reflets, occlusion ambiante… On n'y est pas encore, mais ça progresse.
C’est une technologie qui existe depuis un moment, notamment dans le cinéma, mais qui était beaucoup trop gourmande pour qu’elle soit utilisé dans les jeux-vidéo. Or, les nouvelles générations de cartes graphiques haut-de-gamme embarquent maintenant des cœurs dédiés aux calculs de ces rayons (RT Cores dans les RTX de NVIDIA, Ray Accelerators dans les RX 6000 de AMD). Et hop, c’est la fête.

Mais ça reste quand même très gourmand. Du genre à diviser tes FPS par 2. L’idéal est donc de le coupler au DLSS pour garder une bonne fluidité.

Comparaisons graphiques

Je n’ai pas de CG gérant le Ray-tracing donc j’ai piqué une image chez adrenaline.uol.com.br. C’est Battlefield V. Je crois.

R-T désactivé
R-T activé
R-T activé
R-T désactivé

Qualité des textures

La modification de la qualité des textures ne nécessite pas de calculs particuliers, à part l’affichage de textures sur des surfaces. L’impact sur le GPU est donc assez faible et les FPS sont peu impactées.
Cependant, qui dit textures de plus haute qualité dit plus de stockage dans la VRAM. Fais donc bien attention à ne pas la surcharger pour ne pas te retrouver avec une CG asthmatique.

Filtrage des textures

De belles textures c’est bien, mais si elles sont loin ça sert à rien. Surtout qu’elles seront tout aliasées. L’idée du filtrage des textures est donc d’utiliser des textures haute qualité pour les objets proches, et des textures basse qualité pour les objets lointain.
Tu l’auras deviné, le point critique c’est la transition haute qualité – basse qualité. Plusieurs filtres existent pour la gérer.

Bilinéaire

Le filtre bilinéaire n’est pas très subtil et a un fonctionnement binaire : soit c’est haute qualité, soit c’est basse qualité. Et du coup on peut voir une démarcation moche sur les murs, les routes, …

Trilinéaire

Le filtre trilinéaire se base sur le bilinéaire en interpolant des niveaux de qualité intermédiaires. C’est toujours moche, mais un peu moins.

Anisotrope

Le filtre anisotrope fonctionne de la même manière que le trilinéaire, mais en prenant en compte l’angle de vue du joueur dans la méthode de calcul de l’interpolation. La transition entre les textures haute qualité et basse qualité est beaucoup plus douce, le rendu est plus naturel.
Ce filtre est très peu gourmand et apporte de vraies améliorations visuelles, tu peux l’activer à fond sans trop te poser de questions.

Comparaisons graphiques

Quelques images tirées de Ghost Recon Wildlands pour illustrer tout ça (Crédits images : Ubisoft).

Anisotrope désactivé
Anisotrope désactivé
Anisotrope x4
Anisotrope x4
Anisotrope x16
Anisotrope x16

Image sharpening

Si tu le veux vraiment, on peut le traduire par « affinage de l’image » mais ça me fait penser à un fromage alors je vais rester en anglais.

L’image sharpening accentue les contours pour les rendre plus nets, et diminue ainsi le flou généré par les anti-aliasings. Le résultat est plutôt sympa et le coût en FPS très modeste (entre 1 et 5% en général), donc je ne peux que te conseiller de le tester.

C’est une technologie qui est supportée par les cartes NVIDIA et AMD les plus récentes, et qui doit être activée dans leurs panneaux de contrôles respectifs.
Pour NVIDIA, un réglage 0,50 et 0,17 semble être un bon compromis. Mais comme toujours, à toi de régler en fonction de tes jeux et de tes goûts.

Variable rate shading (VRS)

Contrairement aux précédentes options graphiques, le VRS n’a pas vocation à rendre l’image plus belle, mais plutôt à en simplifier le calcul pour soulager la carte graphique.
Son principe de fonctionnement est simple : diminuer la résolution du rendu de certaines zones de l’image :

Visuellement, le joueur n’y voit que du feu mais ce petit trick peut faire gagner quelques FPS (de 5 à 15%) en plus de resserrer l’écart entre les FPS min, max et moyennes.

Si le jeu le supporte je pense que ça vaut le coup d’activer cette option.

Bonus : panneaux de contrôle

Les pilotes de AMD et NVIDIA intègrent un panneau de contrôle, proposant de nombreuses options pouvant outre-passer les réglages graphiques des jeux. Ça peut être utile pour améliorer les options intégrées au jeu (ex : meilleur AA) ou pour ajouter une option qui n’y est pas (ex : occlusion ambiante). Cependant fais attention avec ces panneaux de contrôles, les réglages intégrées au jeu sont souvent plus optimisés et tu risques de pas mal plomber tes FPS si tu règles tout ça à la zob. Compare donc bien les impacts sur la qualité graphique et sur les FPS de chaque réglage que tu fais.

Benchmarks

Ok la théorie c’est bien mais nous on veut des FPS. J’ai un peu joué avec l’outil de benchmark intégré à Ghost Recon Wildlands en faisant varier chaque paramètre graphique, mais ce n’était pas très concluant. En attendant un deuxième essai, je te laisse avec les valeurs pour les pré-réglages par défaut.
(Moyenne sur 3 runs ; AMD Ryzen 5 1600 ; 16 Go DDR4 3200 MHz ; GTX 1080)

Benchmark VRAM
Benchmark VRAM

On voit que le mode Ultra pompe un max de FPS, avec parfois très peu d’améliorations esthétiques par rapport au mode Très Élevé.
Si on souhaite un jeu avec de beaux graphismes, il est parfois plus sensé se rester en Très Élevé et de mettre en Ultra simplement quelques options stratégiques, que tu connais maintenant parfaitement (ex : Filtrage et qualité des textures, AO).

Si vraiment tu es impatient de voir l’impact de chaque option individuellement, Game Debate a fait le taf sur Read Dead Redemption 2 :
https://www.game-debate.com/news/27927/red-dead-redemption-2-most-important-graphics-options-every-setting-benchmarked

Benchmark VRAM

On retrouve ce qui a été dit précédemment : Peu d’effet des textures, du filtrage et de l’occlusion ambiante, MSAA gourmand, TAA moins gourmand, FXAA peu gourmand.

Conclusion

Allez, je te laisse régler tout ça et benchmarker tes jeux préférés pour trouver les meilleurs compromis. Dans tous les cas, n’oublie pas de follow, et on te fera de gros bisous virtuels <3

Exosky pour C3POtes

N’oublie pas que c’est grâce à vos dons que nous pouvons continuer à proposer ces tutos de qualité inférieure ainsi qu’un fabuleux site web fait à la main et made in France. Soutiens-nous ! → https://streamlabs.com/c3potes/tip

Les avis/remarques/corrections/ajouts sont les bienvenus. Tu peux nous envoyer un p’tit message sur nos pages de réseaux sociaux et on essaiera de te répondre si on n’est pas trop occupés à se faire spawnkill par la team adverse.

Sources

Général :
https://www.cowcotland.com/topic29759.html (merci à FouloudGlioziol)
https://www.pcgamer.com/pc-graphics-options-explained/
Impact sur les performances :
https://www.quora.com/When-PC-gaming-what-graphic-settings-affect-the-CPU-or-GPU-more (GG à Jacob Lux)
Synchronisation verticale :
https://www.canardpc.com/380/v-sync-g-sync-freesync
Input-Lag :
https://www.blurbusters.com/gsync/gsync101-input-lag-tests-and-settings/11/
https://www.hardware.fr/articles/914-3/rappel-v-sync-on-off-triple-buffering.html
Anti-Aliasing :
https://www.youtube.com/watch?v=G8oLwbLrxgk
https://en.wikipedia.org/wiki/Aliasing
https://vr.arvilab.com/fr/blog/anti-aliasing
https://www.comptoir-hardware.com/actus/cartes-graphiques/45742-comptoiroscope-le-dldsr-lanti-anti-aliasing-signe-nvidia-.html
https://www.tomshardware.fr/articles/test-dlss-upscaling-nvidia-rtx,2-2856.html
https://www.comptoir-hardware.com/actus/software-pilotes/45746-le-fsr-2-livre-beaucoup-plus-de-details.html
Occlusion ambiante :
https://www.canardpc.com/383/ssao-hbao
Ray-Tracing :
https://www.techpowerup.com/reviews/Performance_Analysis/Battlefield_V_RTX_DXR_Raytracing/4.html
Image sharpening :
https://www.techspot.com/review/1903-dlss-vs-freestyle-vs-ris/
VRS :
https://www.tomshardware.fr/test-variable-rate-shading-astuce-pour-gagner-en-performances-dans-les-jeux/

Encore plus d’illustrations vidéoludiques

Les illustrations sont (presque toutes) tirées de Ghost Recon Wildlands.

Anti-aliasing

Pas d'AA
Pas d’AA (Crédit image : Ubisoft)
FXAA
FXAA (Crédit image : Ubisoft)
SMAA
SMAA (Crédit image : Ubisoft)
TAA
TAA (Crédit image : Ubisoft)
FXAA + SMAA
FXAA + SMAA (Crédit image : Ubisoft)

Occlusion ambiante

Pas d'AO
Pas d’AO (Crédit image : Ubisoft)
SSBC
SSBC (SSAO pimpé par Ubi) (Crédit image : Ubisoft)
HBAO+
HBAO+ (Crédit image : Ubisoft)

Ombres

Pas d'ombres
Pas d'ombres (Crédit image : Ubisoft)
Ombres standard
Ombres standard (Crédit image : Ubisoft)
Ombres élevées
Ombres élevées (Crédit image : Ubisoft)
Ombres très élevées
Ombres très élevées (Crédit image : Ubisoft)
Ombres ultra
Ombres ultra (Crédit image : Ubisoft)

Ray-Tracing

Ray Tracing
Ray Tracing OFF/ON (Crédit image : adrenaline.uol.com.br)

Filtrage des textures

Pas de filtrage des textures
Pas de filtrage des textures (Crédit image : Ubisoft)
Filtre anisotrope X2
Filtre Anisotrope x2 (Crédit image : Ubisoft)
Filtre anisotrope X4
Filtre Anisotrope x4 (Crédit image : Ubisoft)
Filtre anisotrope X8
Filtre Anisotrope x8 (Crédit image : Ubisoft)
Filtre anisotrope X16
Filtre Anisotrope x16 (Crédit image : Ubisoft)