Wednesday, June 19, 2024

How I unlocked the hidden modes of DLSS

Share

Jacob Roach / Digital Trends

ReSpec hero art with Jacob Roach

This story is part of Jacob Roach’s ReSpec series, covering the world of PC gaming and hardware.

Nvidia’s Deep Learning Super Sampling (DLSS) has become a mainstay in modern PC games. We all know about the basic presets to choose from in games that set the quality level and tip the scales toward performance or image quality.

Contents

  • Meet DLSSTweaks
  • The presets
  • For enthusiasts only

But under the surface, there are a range of hidden presets that make DLSS behave in different ways. These are how developers tweak how DLSS reacts to a given input resolution and specific game content. They aren’t meant to be user-facing, but a clever mod allowed me to open up the hood of DLSS and get my hands dirty. Not only do these hidden presets provide far more customization,  but they also reveal how DLSS really works.

Recommended Videos

Meet DLSSTweaks

Jacob Roach / Digital Trends

The mod in question is DLSSTweaks. It’s basically a wrapper for the file that enables DLSS in games, overriding Nvidia’s authenticity checks so you can edit certain parameters. The main function of DLSSTweaks is to edit scaling factors, allowing you to alter what each of the performance mode does. For instance, you could set the Performance preset to use a 55% internal resolution instead of the 50% internal resolution it normally uses.

Get your weekly teardown of the tech behind PC gaming

ReSpec

Subscribe

Check your inbox!

Privacy Policy

You can go all the way up to 100% resolution, too, essentially adding Nvidia’s Deep Learning Anti-Aliasing (DLAA) to any game that supports DLSS. That can make a massive difference, as you can see in the video of Returnal below. DLAA not only makes the fine details of the scene sharper, but it also makes them more stable, handling the strange artifacts that pop up when the rain occludes other objects in the scene.

That’s the main function, but you can also use DLSSTweaks to enforce one of six DLSS presets (more on those soon) and to override the default file games use for DLSS. That latter ability comes in handy whenever Nvidia makes a large update to DLSS. You can find a download for the latest version online — or get it  from a game that comes with that version — and add it to your game, regardless of when (or if) the developer integrates it.

Setting up DLSSTweaks is a little fussy, as you have to copy over the files to each game you want to apply the mod to and configure them all individually. You’re also modifying game files with DLSSTweaks, so you can’t use it with online games. Still, after running through the configuration half a dozen times in various games, I was able to get up and running in a few minutes.

The presets

I wanted to look at the presets that DLSS uses behind the scenes. There are six of them, A through F, that tweak the AI model for different input resolutions and game content. Here’s how Nvidia describes each of the presets:

  • Preset A: Intended for Performance/Balanced/Quality modes. An older variant best suited to combat ghosting for elements with missing inputs, such as motion vectors.
  • Preset B: Intended for Ultra Performance mode. Similar to Preset A, but for Ultra Performance mode.
  • Preset C: Intended for Performance/Balanced/Quality modes. Generally favors current frame information; well suited for fast-paced game content.
  • Preset D: Default preset for Performance/Balanced/Quality modes; generally favors image stability.
  • Preset E: A development model that is not currently used.
  • Preset F: Default preset for Ultra Performance and DLAA modes.

This list is a bit dated. The latest version of DLSS, DLSS 3.7, includes Preset E, though Nvidia doesn’t have any official description for it. Otherwise, the two main ones you’ll see are Preset D and Preset C. These look the best, and they’re the most stable. With DLSSTweaks, however, you’re free to use any of the presets on any performance mode, as well as apply a preset globally.

Lies of P Presets

The differences between each preset are admittedly small, but there are differences. You can see that in action in Lies of P above. With Preset A (middle), there are disocclusion artifacts around the sparks as they ramp up. They’re hard to spot at first, but pay attention to the ripples the sparks create in the cobblestone. They aren’t present with Preset D (left) or Preset C (right).

There isn’t a one-size-fits-all solution here, though, and Atomic Heart is proof of that. Preset F (middle) is able to keep the fine details of the weapon more stable than the other presets, particularly in the grooves. Again, the difference is minor, but it’s interesting to see how the different models react.

To be clear, this isn’t nessacary. I’ve massively zoomed in the videos here, and after gathering and comparing around 50GB of game capture, these were the most signficant differences I could come up with. Developers generally choose the best preset out of the gate, anyway, and the minor differences between each of the presets aren’t going to meaningfully impact your gameplay experience outside of these zoomed-in, slowed-down videos.

Understanding this process is still relevant, and the recent DLSS 3.7 update is proof of that. It unlocked Preset E, and there are some signficant image quality improvements with it. I added the updated DLSS file to the Horizon Forbidden West game folder and forced the preset through DLSSTweaks, and you can see the result in the video above.

The ground, rocks, and even the chest close to the camera are all significantly sharper. Perhaps more importantly, they’re stable. This is 4K capture with DLSS’ Performance mode, meaning an internal resolution of 1080p. Preset E isn’t just cranking the sharpening here, where you would see instability on these high detail objects. It’s also preserving more detail in the upscaling process.

For enthusiasts only

As mentioned, the main purpose for DLSSTweaks is adding DLAA to games, and that’s mainly what I use it for. There are an awful lot of games that support DLSS, but don’t include DLAA, and it can have a huge impact on image quality. For instance, in Ghostrunner 2 above, you can see how DLAA stabilizes the flickering preset with the game’s normal anti-aliasing.

For the presets, they’re more hassle than they’re worth. If you like to nerd out about the smallest differences in image quality like I do, messing with the presets is amazing. It exposes what developers are looking at (or not) when settling on a preset, and how Nvidia trains its models for different game content. It’s a inquisitive process, not a practical one.

There are some places where it’s relevant, though. Horizon Forbidden West is one example, but we’ve seen games previously that launch with subpar image quality for DLSS (Dragon’s Dogma 2 comes to mind recently). Download and use DLSSTweaks for DLAA, and keep it in your back pocket if a game with a poor implementation comes out or an improved version of DLSS is released.

Outside of using DLSSTweaks for presets and DLAA, it allows you to enable the developer overlay to see what games are doing with DLSS. I found some interesting things during testing just through the overlay — for example, the 2023 remake of Dead Space uses a custom model and weights rather than the defined presets. Like tweaking the presets, it doesn’t make a difference in the game, but it sure is interesting to look at.

Read more

More News