People Have Found A Clever Trick To Upgrade Nvidia’s DLSS

People Have Found A Clever Trick To Upgrade Nvidia’s DLSS
Image: Steam

Nvidia’s neural-network powered DLSS for upscaling for video games is incredibly handy — but it’s not perfect. But if you want to make sure all of your DLSS games have the best possible image quality, here’s a neat little trick you can apply.

Something most gamers might be unaware of is that Nvidia makes incremental upgrades to their deep learning supersampling much the same way they do graphics drivers. But unlike what you might have running on your system, games don’t automatically upgrade to the latest version of DLSS whenever it’s available. Whatever that game was trained on, that’s what it ships with — unless the developer and Nvidia specifically work to improve things post-launch (as seen with Control).

And normally, that’s usually entirely fine. But there’s a reason why you might want to pay more attention to these upgrades now. While “DLSS 2.0” — or technically DLSS 2.1 according to the version info in the DLL files that ship with various games — is a massive improvement on Nvidia’s original AI-powered upscaling, there’s still some noticeable problems in some games.

Ghosting has been a common problem with DLSS, particularly on objects that weren’t tied to motion vectors in a scene. Things that have thin lines like chain fences, for instance, would often produce artifacts, especially if you were moving at speed (or you were looking through the fence at objects behind, like when you’re on the train in Metro Exodus).

Another good example, as spotted by Digital Foundry below, was Death Stranding: the cryptobiotes floating up into the air no longer leave a greasy trail. Some of the more egregious artifacts from Cyberpunk 2077 are gone as well when the game is upgraded from DLSS 2.1 to DLSS 2.2.

So that’s all well and good, but you might be asking: OK, so how do I upgrade my games?

The answer is pretty simple. All you have to do is find a game — or Unreal Engine, as it turns out — that has the latest version of DLSS from Nvidia. Once you’ve got that game, all you need to do is copy over the nvngx_dlss.dll file from that game’s directory, into the directory of the game you’re looking to upgrade.

Where that game will be installed varies from system to system, launcher to launcher.

dlss
Image: Digital Foundry

The next step, obviously, is to know what games have the latest version of DLSS. And if you’re wondering why this article has had a feature image of Rust this whole time, now you know why. The survival simulator was updated last week with DLSS support, and someone on Reddit found that Rust has the newest version of DLSS available. (Ordinarily, you might think multiple games would just use the same version until there was a major upgrade, but that doesn’t seem to be the case — Rainbow 6: Siege has a newer version of DLSS than, say, Cyberpunk 2077 or Death Stranding, but the file that ships with that is older than what’s in Rust.)

So all you have to do is copy the DLL file over from Rust‘s directories into any DLSS-supported game and you should start seeing the visual benefits. It’s worth stressing that you’re not liable to see extra boosts in performance here. It’s also not officially recommended by Nvidia, so back up the existing DLL just in case.

Users, however, have already used this trick with success. Here’s a video of someone running DOOM Eternal at 4K, using the latest DLSS version.

But if you’re replaying Cyberpunk or Metro or older games with DLSS support, it’s nice to know you can improve the game’s image quality by literally copying over one file. Cyberpunk is one area where I’d recommend trying it just to see the difference: DLSS adds a lot of artifacing in that game around cars, elevators and motorcycles at speed, something which the latest DLSS fixes. (And as Digital Foundry notes, the continued upgrades raise an interesting question for the next Nintendo Switch and what we can expect from its 4K upscaling.)

If you don’t have Rust or Rainbow 6: Siege, the next best option is Lego Builder’s Journey (which uses DLSS 2.2.0.6) or Unreal Engine 5, which has a slightly newer DLSS dll within its libraries. (Failing that, you could just grab Rust and its DLC bundle for $13 right now — it is still one of the best survival games on Steam, after all.)

Comments

  • Tried it with Doom Eternal. Definitely helps the smearing, still not 100%, and still has the ‘snap in smear’ that plagues DLSS somewhat, but definitely a good upgrade IMO.

    The question is, with these solutions, how do we encourage devs to keep their shit updated.

    • The DLSS part comes from Nvidia, so it’s less about lobbying the individual devs and maybe a more streamlined patch process, possibly?

      Being built into the Game Ready drivers would be easiest for everyone, so updating that would also update all DLSS-capable games. But that might not be technically capable if Nvidia has to ship it out to a dev before the build’s out. This one could be tricky, I think.

      • Kinda, the motion vector data for example is still unique to each game, but no idea if thats held in the Driver, or as part of the game, but everything else outside that should be classed as being ‘generalised’, but thats if a version doesn’t mess with how MVD is consumed, which I guess would stop devs from being able to just pull from upstream for every patch release.

        I think I’m starting to understand why AMD went with the DLSS 1.0 option of Spatial rather than Temporal and with its sharpening being adaptive rather than set, regardless of arguments for and against each solution, you can comfortably just pull from upstream without issues.

Show more comments

Log in to comment on this story!