DCS et AMD FidelityFX Super Resolution (FSR)

  • Membre du bureau

    Suite à un signalement de @Worg sur le Discord, j’ai testé dans différentes configurations le driver dont il avait parlé.

    TL;DR
    En utilisant ce driver, et en arrivant à une qualité graphique similaire (même si ça reste subjectif) je suis passé de 19-20 ms de GPU frametime (le temps passé par la carte graphique pour construire une image, avec 20ms on a un maximum de 50 images par secondes : 1 / 0.020) à 13-14 ms (dans les mêmes conditions).

    De quoi s’agit-il ?
    Un type sympa nommé F. Holger a réalisé un fork du driver OpenVR qui intègre un système d’upscaling (mise à l’échelle vers une plus grande résolution) utilisant la technologie FidelityFX Super Resolution d’AMD.
    En pratique, le driver modifié fait tout le rendu à une résolution moindre que celle demandée par la configuration qu’on a choisie (le Pixel Density de DCS, multiplié par le Super Sampling de SteamVR ou d’Oculus), puis upscale le résultat vers la résolution choisie en utilisant AMD FSR.
    C’est nettement plus rapide que de faire le rendu directement à la résolution finale, et le résultat est très proche.

    Caveat
    Oui, il y a toujours un mais : dans ce cas c’est pour les utilisateurs de casques VR Oculus.
    DCS utilise OpenVR, mais uniquement quand il passe par SteamVR.
    Comme, avec un Oculus Rift S, ou un Quest 2 en AirLink, DCS passe directement par le driver d’Oculus, la bidouille de F. Holger ne s’active pas.
    Il faut impérativement lancer DCS en mode SteamVR (avec l’option --force_steam_VR) pour voir un effet, et dans ce mode on pert un peu de performances en passant de Oculus direct à SteamVR, puis Oculus.
    Bref, on gagne mais on pert un peu, ce qui fait qu’on gagne moins que pour ceux qui sont déjà sous SteamVR (HP Reverb G2, Valve Index par exemple).

    Comment faire ?
    Vous pouvez tester facilement, j’ai fait un mod qui est disponible dans le repository game files de la VEAF.
    Il s’appelle Optimization - VR - OpenVR API with AMD FSR et est préconfiguré avec un ratio de 0.7 (rendu à 70% de la résolution d’origine, donc on peut s’attendre à 20-30% d’amélioration).
    Si vous êtes joueur, le fichier de configuration est ici : DCS World OpenBeta\bin\openvr_mod.cfg

    • "renderScale": 0.70, : le ratio dont je vient de parler
    • "radius": 0.5, le rayon du cercle dans lequel AMD FSR fait son effet ; le reste est en mode “rapide et moins joli”
    • "debugMode": false : permet de voir le cercle dont je viens de parler