dlss5-bridge README

The project's README from github.com/NIGos/dlss5-bridge. As one markdown file: README.md.

DLSS 5 Bridge

[!WARNING] Unofficial download site: dlss5bridge.com is not operated or endorsed by this project. Get DLSS 5 Bridge from this repository's GitHub releases. Its ZIP contains an unofficial .exe installer. Hybrid Analysis classifies it as Malicious and records attempts to add Microsoft Defender exclusions for other executables. Do not run installers from that site. A user's reported compromise has not been independently verified; see #30. Verify your download before loading it: official SHA-256 values and an optional PowerShell checker.

A bridge for DLSS 5 Neural Rendering add-ons in DirectX 11 and Vulkan games, with an optional optical-flow path for games without DLSS.

A ReShade add-on that mirrors a DirectX 11 or Vulkan game's DLSS onto a private DirectX 12 session, where a compatible neural rendering add-on can process it. For games without DLSS, it can build substitute inputs from ReShade's depth and NVIDIA Optical Flow, or a ReShade motion-vector shader. The game's files are not patched.

This bridge does not do neural rendering itself. It needs a separate compatible DLSS 5 Neural Rendering add-on, such as RenoDX's renodx-dlss5.addon64, distributed in its Discord channel, together with its nvngx_dlssnr.dll. The bridge only gives that add-on a place to work.

If it is useful to you, you can help cover the AI tooling used in its development:

Support on Ko-fi

Releases and their notes: github.com/NIGos/dlss5-bridge/releases.

Release status (9 September 2026). v1.4.12 remains the stable release. main contains the cumulative 1.4.13 prerelease changes and the D3D11 depth/MV conversion fix. The latest test build, v1.4.13-pre5, also fixes a Vulkan Frame Generation startup failure reported in Endfield: it supplies the command buffer's device when NGX cannot infer one alongside the Bridge's private device, and clears obsolete hooks when an NGX module unloads. Pre5 includes all pre4 changes and has verified GitHub Actions build provenance. It is still unsigned; follow the download verification instructions before loading it. BG3 split-screen rendering remains open. The BG3 FG reporter confirmed neural output, but also tested local hook changes and newer Streamline files; flickering/ghosting and general hook coexistence remain under investigation. The Endfield mirror slowdown remains unresolved; the FG startup fix does not establish an FPS improvement.

Some neural add-ons support additional graphics APIs directly. Whether you need this bridge depends on the add-on build and the game. See the compatibility notes below; support for NGX D3D12 calls alone does not guarantee compatibility.

What it does

The DLSS 5 add-on is not modified. It receives genuine NGX D3D12 calls on a private D3D12 device, and its result is copied back into the game's output. Three routes; the substitute is off by default:

Route Game Contract
D3D11 bridge DirectX 11 with DLSS The game's Color, Depth and MotionVectors are copied into shared textures, evaluated on D3D12 and copied back. The bridge follows the supplied dimensions, regions and parameters, with defaults for missing values.
Vulkan mirror Vulkan with DLSS The game's own, mirrored the same way through imported D3D12 textures. vk_mirror=1, the default.
Substitute contract Games without DLSS that expose usable depth and motion inputs through ReShade DLAA at back-buffer size, using NVIDIA Optical Flow or a ReShade motion-vector shader. Requires synth=1; availability depends on the API, driver and inputs.

With source=auto, the game's own DLSS takes priority. Prefer that route when the game has DLSS. The substitute can also run while the game's DLSS is off, but switching between the two has limitations described below.

The substitute is a real DLSS feature fed approximated inputs, and it shows: text softens and dense foliage smears. It is an option, not a default.

Requirements

An NVIDIA GPU and driver that support DLSS, plus a neural add-on and model compatible with that GPU. D3D12 support alone is not sufficient. Required files:

File From
ReShade 6.0 or newer with full add-on support reshade.me. Install for the game's rendering API: D3D11 uses a local proxy DLL; Vulkan uses ReShade's Vulkan layer. A local dxgi.dll is not the Vulkan installation method.
A compatible neural rendering add-on, such as renodx-dlss5.addon64 its Discord channel. Use one neural consumer at a time; see compatibility notes below.
nvngx_dlssnr.dll shipped with that add-on
dlss5-bridge.addon64 this project
nvngx_dlss.dll Use the game's existing DLSS for the native mirror. For the substitute path, supply version 3.1.13 or newer beside the executable, even in a game without DLSS. The driver alone does not supply the required SR snippet there.

The neural add-on's own toggle has to be on, in its panel or in ReShade.ini.

The neural add-on's build matters, and its version number does not identify one. Two builds of 2026-08-28 declare the same version; the newer one needs to see this add-on's D3D12 device through ReShade's proxy, and underneath it reports active and writes nothing. The log prints a SHA-256 for every add-on beside this one, says whether that build has been measured here, and keeps the proxy for a build that needs it.

Install

Download dlss5-bridge.addon64 only from our GitHub releases. Bridge has no installer and never asks you to disable antivirus protection or add exclusions. ReShade has its own legitimate installer, available separately from reshade.me. Verify the Bridge file before putting it in the game folder.

Install ReShade for the correct API, then copy dlss5-bridge.addon64 and the neural add-on's files into its add-on search location, normally beside the game executable. On first run the Bridge writes dlss5-bridge.cfg with defaults for games using their own DLSS. Games without DLSS need the opt-in below. Keep only one Bridge DLL installed; back up old DLLs outside the game folder. To remove the Bridge, delete its .addon64 file.

The settings file's first line is the version that wrote it. A different version replaces the file with its own defaults on first run and says so in the log; the same version never touches it. # dlss5-bridge keep as the first line keeps a file across versions.

Games without DLSS. The substitute contract needs three files beside the game's executable that such a game does not bring: the DLSS 5 add-on and its nvngx_dlssnr.dll, and a nvngx_dlss.dll of version 3.1.13 or newer, copied by hand from any game that has DLSS. The NVIDIA driver does not supply that file in the game's folder. Open ReShade's overlay and, in DLSS 5 Bridge, enable Replace DLSS when the game isn't using its own (or set synth=1). Enable neural rendering in the separate neural add-on's panel too. Optical flow is selected by default; the Bridge panel shows whether usable depth and motion inputs are available. If the DLSS DLL is missing, the panel and log name it.

Upgrading from 1.1.0 or earlier: the files were called dlss5-dx11-bridge.addon64 and dlss5-dx11-bridge.cfg. Delete the old .addon64 — ReShade loads both, and the older one ends up on screen. The old .cfg is read where no current one exists.

The Bridge hooks supported NGX entry points in memory. Hook selection has guards for unsupported exports; it does not patch every export indiscriminately. The prerelease additionally leaves the Frame Generation DLL untouched.

Configuration

dlss5-bridge.cfg is re-read about once a second, so most keys take effect without a restart. While a Vulkan mirror session holds the session the file is not re-read until the game's DLSS goes quiet.

Key Default Meaning
vk_mirror 1 Hook the Vulkan NGX entry points and mirror a Vulkan game's own DLSS. Read once at launch. Depth aspects carried: D32_SFLOAT, D32_SFLOAT_S8_UINT, D24_UNORM_S8_UINT; a 16-bit aspect is refused by name.
synth 0 Allow the substitute contract, for a game with no DLSS and for a game whose DLSS is switched off. One switch in the panel.
synth_after 0 With synth=1, seconds of silence from the game before a substitute is built for a game that has never asked. 0 is the default 10 s. A delay, not an opt-in.
source auto auto prioritizes the game's DLSS and permits the substitute when synth=1; mirror and synth pin one; off disables both processing paths.
ofa_grid 2 Grid of the driver's optical flow engine on the substitute path: 1, 2, 4, or 0 to use a ReShade motion-vector shader instead.
ofa_perf 20 Optical flow effort, NVIDIA's own values: 5 slow, 10 medium, 20 fast.
mv_sign_x, mv_sign_y 0 Force the motion-vector sign (1, -1); 0 uses the provider's convention or the engine's measurement. Diagnostic.
vk_present 0 How the substitute's result reaches a Vulkan back buffer: 0 copies where the image allows it and draws it otherwise, 1 copies only, 2 draws always.
vk_sync 0 How the substitute's Vulkan transport orders itself against the private D3D12 device: 0 parks the game's queue on a Vulkan event while a worker thread runs the optical flow and the evaluate, 1 waits the queue idle on the CPU instead, 2 pipelines. 1 costs a full CPU-GPU serialisation every frame and is the fallback if the park misbehaves on a driver. 2 runs one frame's evaluate while the game renders the next, so the wait the game's queue reaches is on work that started a frame earlier rather than on work that starts when it gets there -- at the price of showing the result one present later, which is about 17 ms at 60 fps and 33 at 30, and one more Output texture. That texture is the back buffer's own size and format, so it is width x height x bytes per texel: 8.3 MB at 1920x1080 and 24.6 MB at 3840x1600 for a 4-byte format, double each on an RGBA16F back buffer.
stage 3 Processing level: 0 disables processing but leaves hooks installed. D3D11: 1 input copies, 2 plus depth conversion, 3 full processing. The substitute needs 3; the Vulkan mirror records from 2 and copies results back at 3 with mode=2.
mode 2 0 never writes to the game, 1 transport only, 2 the full path.
skip_game 1 D3D11 only: skip the game's DLSS evaluate when the bridge can replace its full output. Vulkan always forwards the game's evaluate.
flags -1 DLSS.Feature.Create.Flags. -1 copies the game's value. 107 is treated as unset (an old default); use 108 to force that pattern.
subrects 1 Fallback for DLSS.Enable.Output.Subrects when the game sets none. D3D11 bridge only.
reset_every 0 1 sets the NGX Reset flag every frame. Diagnostic.
pixels 0 1 reads pixels back to the CPU on frames 2 to 4. Diagnostic; stalls the GPU.
dred 1 Ask D3D12 to record what the GPU was executing, so a device reset can be explained. Read when the session opens.
skip_exe 1 1 hooks the executable's own NGX exports only if no library exports them within a minute, so a game's image is not patched at startup. 0 hooks at once, 2 never.
unwrap 1 Hand NGX the D3D12 device underneath ReShade's proxy. 0 keeps the proxy. A neural add-on build measured to need the proxy, and ReShade loaded as d3d12.dll, both override 1 automatically. 2 forces unwrapping despite those checks; use only for a targeted diagnostic. See the Linux reports below for cases needing 0.
ngx_loader 0 What to do about an NVIDIA driver whose NGX loader drives neural rendering into a snippet that faults (32.0.16.1664 and 1686 with nvngx_dlssnr.dll 310.8.0.0): 0 closes that route in memory at attach, so the DLSS 5 add-on drives the feature itself as it did on 32.0.16.1656; 1 leaves the driver alone; 2 loads the previous driver's loader instead, if the driver store still holds one. Applies only when a snippet measured to fault is beside the game.
shape 0 1 builds the mirrored feature at the render region the game declares on each evaluate (DLSS.Render.Subrect.Dimensions) and rebuilds when that region changes. Confirmed by the PSO2 reporter to fix 0xBAD00005 in #8. Leave at 0 unless needed.
stall_test 0 Holds the private D3D12 queue for this many milliseconds, once, at the 60th submission, to exercise the stall path. Diagnostic.
unwrap_list 0 1 hands NGX the command list underneath ReShade's proxy. Diagnostic.
probe 0 1 runs a standalone NGX D3D12 probe at attach and logs the result. Diagnostic.
hash_out 1 Once per feature build, 60 frames in, read the input and the output back and log a hash of the output, the mean of each channel of both, and the brightness ratio out/in. One readback per build; 0 disables. D3D11 bridge only.

Status panel

ReShade's overlay has a DLSS 5 Bridge window. It shows which route holds the session and why, the contract in use, the motion-vector source on the substitute path, and whether frames are still arriving. One switch, Replace DLSS when the game isn't using its own, writes synth; Detail, Speed and Direction write the optical flow and sign keys. A Details checkbox adds what a bug report needs: build, transport, create flags, file paths, every add-on in the folder and the neural add-on's ReShade.ini section.

The panel writes single lines into dlss5-bridge.cfg and reads the file back like any other edit. There is no save, reload or reset: deleting the file restores the defaults on the next launch.

The panel has compatibility handling for ReShade 6.0.0 through 6.8.0. A ReShade built without its overlay, or the "Release Signed" build, has no panel; the log says so and nothing else is affected.

Log

dlss5-bridge.log beside the add-on records the environment, every add-on and NVIDIA model file in the folder with its SHA-256, the contract read from the game, the presentation (output format, colour space, HDR or SDR contract, the exposure texture's value), every NGX result, a cumulative delivered-frame count every 600 frames, on the D3D11 bridge the brightness the output came back at relative to the input, and a timing line:

[bridge] 600 frames: bridge CPU 0.84 ms/frame | frame interval 16.00 ms (62.5 fps) | spread 5.74-29.93 ms | bridge is 5% of the frame | d3d12 43200/43202 (2 behind)

bridge CPU is time inside the add-on, mostly waiting on the GPU. spread is the widest and narrowest frame interval in the window. d3d12 N/M is how far the D3D12 side runs behind; a few is ordinary pipelining.

The bridge adds texture copies, synchronization and, on the substitute path, motion estimation, as well as the neural pass. Their cost depends on the API, scene, resolution, GPU and settings. This CPU timing includes waits and does not establish whether a game is CPU- or GPU-limited. Compare the same scene and settings in separate runs; Vulkan configuration changes may require a restart.

Reporting a problem

A screenshot of the panel with Details ticked answers the first questions. Past that, attach fresh dlss5-bridge.log and ReShade.log files. Please name the game, API, Bridge version, GPU/driver, neural add-on/model build, and whether DLSS, FG/MFG and HDR were enabled. Reports from titles not listed below are useful even when everything works.

Compatibility

Developed and verified on one GPU, on Baldur's Gate 3 (D3D11 and Vulkan), Red Dead Redemption 2 (Vulkan) and Skyrim Special Edition (D3D11). Every release is run through ngxGym, a synthetic DLSS host that exercises both backends, mode changes, contract faults and the substitute contract against real NGX, without a game.

NVIDIA drivers 32.0.16.1664 and 1686 route neural rendering (NGX feature 18) into nvngx_dlssnr.dll itself. The 310.8.0.0 build tested with those drivers faulted inside D3D12 on that route: with the DLSS 5 add-on present the game terminated or stopped presenting. The add-on closes that route in the loaded _nvngx.dll at attach -- one pointer, in memory, nothing on disk -- and the DLSS 5 add-on drives the feature as it did on 32.0.16.1656. See ngx_loader. Other model builds exist; this is a workaround for the identified combination, not a claim that all current models need it.

Additional reports, scoped to the tested setups:

Other titles reported working by users (not a guarantee for every build or mode):

Title Engine DLSS from
Baldur's Gate 3 Divinity 4.0 the game
Final Fantasy XIV Online in-house the game
The Legend of Heroes: Trails beyond the Horizon Falcom the game
Tainted Grail: Fall of Avalon Unity the game
7 Days to Die Unity the game
Skyrim Special Edition Creation a DLSS injector mod
Fallout 4 Creation a DLSS injector mod
S.T.A.L.K.E.R. Anomaly X-Ray an upscaler injector mod (SSS24)
Assetto Corsa kunOS Custom Shaders Patch (Preview 338 or later)

Tainted Grail also has an open, setup-specific device-creation report in #24.

The bridge follows the game's NGX inputs rather than requiring a game-specific integration. DLSS supplied by a mod can be picked up like built-in DLSS; compatibility still depends on the supplied inputs and the other add-ons.

Known limits

The Bridge attempts to stand down on detected failures, but failures in a driver or another add-on can still crash the game or produce an incorrect image.

dlss5-bridge (NIGos/dlss5-bridge)

Searching Database…

这是什么?DLSS 5 Bridge 是一个 ReShade 插件,让 DLSS 5 神经渲染插件可以在 DirectX 11 和 Vulkan 游戏中使用(这类游戏通常只能通过 D3D12/NGX 支持 DLSS);对于完全没有 DLSS 的游戏,它还能通过 NVIDIA Optical Flow 伪造类似 DLSS 的输入。
它是自己执行神经超分,还是只做管道对接?它只是一个桥接器:它把游戏的 DirectX 11 或 Vulkan 渲染镜像到一个私有的 DirectX 12 会话上,让单独的神经渲染插件来处理。它自身不做任何神经渲染。
除了桥接器本身还需要什么?一块支持 DLSS 的 NVIDIA GPU 及其驱动、具备完整插件支持的 ReShade、一个兼容的神经渲染插件(如 renodx-dlss5.addon64 及其 nvngxdlssnr.dll),以及替代路径所需的 3.1.13 或更新版本的 nvngxdlss.dll。
目前有已知问题吗?有:Baldur's Gate 3 分屏渲染的闪烁/鬼影问题仍未解决,Endfield 的镜像减速问题也未解决,构建未做签名,而且光流替代路径的质量明显低于真正的 DLSS(文字变软、植被出现涂抹感)。
它面向哪些平台和游戏?它只面向在 NVIDIA GPU 上使用 DirectX 11 或 Vulkan 的 Windows PC 游戏,通过桥接器创建的私有 DirectX 12 会话来工作。
桥接器真的会执行 DLSS 5 神经渲染吗?不会。它只是挂钩并把 NGX 调用镜像到自己的私有 D3D12 会话;实际的神经渲染由单独的插件完成,例如通过其 Discord 频道分发的 RenoDX renodx-dlss5.addon64。
D3D11 桥接、Vulkan 镜像和替代契约之间有什么区别?D3D11 桥接把 Color/Depth/MotionVectors 复制到共享纹理,供自带 DLSS 的 DX11 游戏使用;Vulkan 镜像通过导入的 D3D12 纹理为 Vulkan 游戏做同样的事;替代契约(synth=1)则利用 ReShade 深度加上 NVIDIA Optical Flow 或运动矢量着色器构建 DLAA 输入,面向完全没有 DLSS 的游戏。
dlss5bridge.com 是安全的下载渠道吗?不是——README 明确警告 dlss5bridge.com 是一个未经官方认可的非官方网站,其安装程序已被 Hybrid Analysis 标记为恶意(Malicious);只应使用该项目的 GitHub releases。
安装它会改动游戏的文件吗?不会,游戏的可执行文件和其他文件保持原样;桥接器只在内存中挂钩 NGX 入口点,并把 DLL 文件放进 ReShade 的插件文件夹。
Creator
NIGos
Size
1.1 MB
Stars
311
Age
1mo
Commits · 90 Days