OptiScaler-DLSSNR-PreSR-Multipass README

The project's README from github.com/wilsjo2/OptiScaler-DLSSNR-PreSR-Multipass. As one markdown file: README.md.

OptiScaler DLSS-NR pre-SR multipass fork

[!IMPORTANT] This is an experimental fork of Dagherbou/OptiScaler_DLSSNR, based on commit 97376162 (v0.2.0-dlssnr / v0.2.0-patch1). It is not the main OptiScaler project and is not supported by NVIDIA or game developers.

The upstream fork already provided experimental direct access to NVIDIA DLSS Neural Rendering. This fork adds:

Downloads:

NVIDIA's proprietary nvngx_dlssnr.dll is required but is not redistributed here.

Optional DLSS Frame Generation dependencies

The NVIDIA Streamline/FG DLLs are not hosted in this repo or uploaded with this change. The DLSS runtime has separate redistribution conditions; the Streamline source licence does not cover the whole DLL set. See the licence review and official sources.

Get the files from NVIDIA's Streamline 2.14.1 release (official SDK ZIP). Our helper downloads that exact ZIP and verifies its checksum, all six DLL hashes and NVIDIA signatures.

  1. Install a complete OptiScaler release first. The v0.6.1 release includes this helper; v0.5 and earlier do not.

  2. If your release lacks the helper, download this repo's source ZIP and extract it into a separate working folder, not over the game. Open PowerShell in the folder containing get_streamline.ps1 and redist (the installed release folder if already present).

  3. Close the game, back up its OptiScaler setup, read the linked NVIDIA licences, then run the following command with your game's real executable directory in place of the example:

    .\get_streamline.ps1 -Destination 'D:\Path\To\Game\OptiScaler\streamline' -AcceptNvidiaLicenses
    
  4. Follow the FG setup instructions. Downloading the DLLs does not enable FG or unlock RTX 40 MFG. Existing different DLLs are never overwritten. Do not replace a game's working native Streamline stack.

Prefer manual installation? The manual download instructions list the exact production files and their destination. The source ZIP is not a compiled OptiScaler release. This supplies dependencies, not a guarantee of injected FG compatibility in every game.

New compatibility work (not yet game-validated)

See what changed, limitations and tests. These changes are not in the older v0.5 download listed above. v0.7.0 also includes an experimental built-in Ada unlock and an optional 30-pass limit, both off by default; instructions and caveats. Do not combine the built-in and external unlockers.

Known issue: Aphelion HDR flicker / purple halos

Issue #3 is not fixed in v0.7.0. The DLSS HDR override can also change NR's colour-space interpretation without converting the underlying colour buffer. This is a plausible cause of the reported purple halos, not a confirmed game-specific diagnosis. The original brightness flicker still needs exposure/format investigation. The reporter says switching dynamic resolution to fixed did not help. Please include the INI, log, game/driver versions and an NR-off comparison in further reports; do not treat disabling HDR as a general fix. No unverified HDR-decoupling change is included in this release.

GPU and runtime compatibility

The Neural Rendering network can run on RTX 20, 30, 40, and 50-series GPUs, but not with the same runtime binary on every architecture:

GPU Required nvngx_dlssnr.dll 310.8 runtime SHA-256
RTX 50 Original NVIDIA-signed runtime E16BCF15E16E13F527491CDF7845B2FE6521A738D8F7C9C721866A8496E1FC8E
RTX 20 / 30 / 40 ShortFuse cross-generation compatibility runtime from the pinned RenoDX thread E67DEE209320CDAFE0E93E45675D7AA34323A53ACC57A72B2E40A181581C989A

The compatibility runtime preserves the model but replaces or backports GPU programs that the older architectures cannot execute: the RTX 20/30 path is predominantly FP16, while the RTX 40 path backports Blackwell-only operations. It is a modified NVIDIA-derived binary, so its original NVIDIA Authenticode signature no longer validates. Obtain it only from ShortFuse's pinned RenoDX thread and verify the hash above. Do not use random DLL mirrors. Driver 616.56 or newer is required.

Quick install

  1. Close the game, then back up any existing OptiScaler/ReShade proxy DLL and INI files.
  2. Extract the entire release archive beside the game's real 64-bit executable. Keep the OptiScaler and Licenses directories with the DLLs; copying OptiScaler.dll alone will not work.
  3. Add the GPU-appropriate nvngx_dlssnr.dll from the table above to that same directory and verify its SHA-256. Both it and this package's differently named nvngx.dll_dlssnr.dll must be present.
  4. Run setup_windows.bat from that directory. Choose dxgi.dll first unless the game or another loader already uses that name, and answer NVIDIA when prompted. The script renames OptiScaler.dll to the selected loadable proxy and confirms which Neural Rendering runtime it found.
  5. Leave [ProcessFilter] TargetProcessName=auto for a portable installation. Start the game, enter a rendered scene, press Insert, and enable DLSS Neural Rendering. Start with one pass.
  6. For pre-upscale operation, set RunBeforeSR=true and select DLSS in the game. At 3840x2160 output, DLSS Performance supplies a 1920x1080 input to the model before Super Resolution.

If no menu or OptiScaler.log appears, the proxy did not load: re-check the executable directory, proxy filename, antivirus quarantine, and conflicts with an existing loader. Do not copy an INI whose TargetProcessName names a different game; that deliberately activates pass-through mode.

Read INSTALL-DLSSNR.md for the full instructions, per-game paths, loader notes, configuration example, and diagnostics.

Implementation details and safety invariants are documented in the pre-SR multipass design note. The remainder of this README is the upstream OptiScaler documentation.

Compatibility scope

The implementation contains no BG3-specific executable names, offsets, or shaders. It is designed for 64-bit games whose DLSS Super Resolution call reaches OptiScaler's Direct3D 12 path, including its Direct3D 11/Vulkan-to-DX12 bridges. It has also run in Hogwarts Legacy and Cyberpunk 2077. Compatibility still depends on the game exposing valid colour, depth, motion-vector, resolution, and command-submission data through its upscaler integration.

Ray Reconstruction follows the same before/after placement control as ordinary SR. v0.7.0 adds native Vulkan pre-SR and multipass NR, including origin-zero padded inputs; v0.6.2 does not contain these additions. Native Vulkan deferred/async residual modes remain unsupported. Vulkan setup, adopted fork changes and validation limits. Games with unusual loaders, multiple swapchains, non-zero colour offsets, invalid render rectangles, anti-cheat, or another dxgi.dll mod may need a different OptiScaler proxy name or will use the guarded post-SR fallback.


Logo




Table of Contents

1. About
2. How it works?
3. Supported APIs and Upscalers
4. Installation
5. Known Issues
6. Compilation and Credits
7. Wiki


Discord invite Stable release Nightly release Wiki
Total DL Stable DL Nightly DL Stars

About

OptiScaler is a tool that lets you replace upscalers in games that already support DLSS2+ / FSR2+ / XeSS ($^1$), as well as manage frame generation in already mentioned games (either by replacing existing FG options or enabling it in DX12 games through experimental OptiFG). It also offers extensive customization options for all users, including those with Nvidia GPUs using DLSS.

[!CAUTION]

  • We've been informed about some FAKE websites presenting themselves as OptiScaler team, so we would like to strongly highlight that we DO NOT HAVE an official website!
  • We DON'T have an official manager app, so please be careful when downloading or using them! And please don't bother us to provide support for something which isn't even ours!
  • Only LEGIT places are this Github, our Discord server and Nitec's NexusMods page.
  • OptiScaler is FREE, any kind of monetary requirements are scams!

[!TIP] For example, if a game has DLSS only, OptiScaler can be used to replace DLSS with XeSS or FSR 3.1 (also works for FSR2-only games, like The Outer Worlds Spacer's Choice, albeit requires manually providing nvngx_dlss.dll).

Key aspects of OptiScaler:

[!IMPORTANT] _**Always check the Wiki Compatibility list for known game iss

OptiScaler-DLSSNR-PreSR-Multipass (wilsjo2/OptiScaler-DLSSNR-PreSR-Multipass)

Searching Database…

What is this?This is an experimental fork of OptiScalerDLSSNR that adds optional NVIDIA Neural Rendering before DLSS Super Resolution, with configurable multipass processing and per-pass strength controls for games.
Is this the official OptiScaler project?No, it is an unofficial, experimental fork and is not supported by NVIDIA or game developers; it works as a proxy DLL (e.g. renamed to dxgi.dll) that you drop beside a game's executable.
How do I install this in a game?Back up any existing OptiScaler/ReShade files, extract the release archive beside the game's 64-bit executable, add the matching nvngxdlssnr.dll runtime for your GPU, then run setupwindows.bat to pick a loadable proxy name (e.g. dxgi.dll) and answer NVIDIA when prompted.
What extra files and drivers does it need?You need NVIDIA's proprietary nvngxdlssnr.dll runtime matching your GPU generation (a different signed/compatibility build for RTX 50 vs RTX 20/30/40), plus driver 616.56 or newer; the DLL is not redistributed in this repo.
What should I watch out for before using this?Aphelion still shows an unresolved HDR flicker/purple-halo bug, high multipass counts can exhaust VRAM or trigger driver timeouts, and pre-Ray-Reconstruction visual quality remains experimental and not fully validated in every game.
Which games and GPUs has this actually been tested on?It is designed for 64-bit games whose DLSS call reaches OptiScaler's Direct3D 12 path (including D3D11/Vulkan bridges); it's verified on Baldur's Gate 3 and has also run in Hogwarts Legacy and Cyberpunk 2077, on RTX 20/30/40/50-series GPUs.
What is RunBeforeSR for?It toggles whether Neural Rendering runs before DLSS Super Resolution upscales the frame or afterward, letting the model clean up the lower-resolution input image before it's scaled up.
What's the difference between the NVIDIA and Experimental model options?NVIDIA uses the original FP8 model and is the default; Experimental uses an NVFP4 hybrid tuned for Blackwell GPUs, with old Precision=2 configs automatically falling back to NVIDIA.
Do I need NVIDIA's Frame Generation DLLs too?Only if you want FG; they aren't bundled, so a helper script downloads NVIDIA's official Streamline 2.14.1 SDK ZIP and verifies its checksum and DLL signatures before use.
How many multipass runs should I use?The normal range is 1-3 passes; an UnlockPasses=true option raises the ceiling to 30, but very high pass counts risk exhausting VRAM or causing a driver timeout.
Creator
wilsjo2
Size
164.3 MB
Stars
827
Age
1mo
Commits · 90 Days