GUIDE · DLSS AND REFLEX · FROM UPSTREAM SOURCES, NOT RUN BY US
dxvk-nvapi: DLSS, Reflex and DXVK
How we checked this
What NVAPI is and why games ask for it
NVAPI is NVIDIA’s own programming interface. Games call it to use NVIDIA-only features such as DLSS upscaling and Reflex latency control. Under Windows it comes with NVIDIA’s driver. Under Wine or Proton there is no NVAPI, so a separate project, dxvk-nvapi, provides one on top of DXVK and vkd3d-proton. It forwards DLSS, Reflex and some Direct3D 11 extensions to NVIDIA’s Vulkan driver.
game -> NVAPI calls -> dxvk-nvapi -> DXVK or vkd3d-proton -> Vulkan -> NVIDIA driver
Why DXVK hides NVIDIA GPUs (sometimes)
By default DXVK reports NVIDIA GPUs as AMD through DXGI unless NVAPI is enabled (dxgi.hideNvidiaGpu = Auto, since DXVK 2.3). The reason: a game that sees NVIDIA may call NVAPI directly, and without NVAPI present that can fail. DXVK_ENABLE_NVAPI=1 (since 1.10.1) turns the hiding off so dxvk-nvapi can work. See GPU selection for the options and the variable list.
Proton
The dxvk-nvapi README says it is enabled by default for NVIDIA GPUs in Proton 9 and newer. Proton variables such as PROTON_ENABLE_NVAPI=1 exist to force it on, and older guides use it for Proton 8 and earlier; the README also mentions variables to force or disable it in newer versions. We did not verify any of this on a Proton build, so check the version you run and its log. See the Proton page.
Lutris, Bottles and Heroic
Each launcher has a toggle for NVAPI. In Bottles, a message that dxvk-nvapi is disabled for the bottle refers to that toggle. We did not test any launcher; see the launcher page.
Plain Wine
In prose, because we have not run it: copy dxvk-nvapi’s DLLs into the prefix as its README describes, set the DLL overrides to native, and set DXVK_ENABLE_NVAPI=1 for DXVK. Follow the dxvk-nvapi README for the exact file names and versions; they change.
AMD and Intel GPUs: FSR, XeSS, OptiScaler
dxvk-nvapi is for NVIDIA GPUs. Community tools such as OptiScaler take a game’s DLSS inputs and feed FSR or XeSS instead. We describe them because people ask, cite them, and neither test nor endorse them. They often ship their own dxgi.dll, which clashes with DXVK’s: only one tool can own a file name (conflicts).
On Windows
You do not need dxvk-nvapi: games use NVIDIA’s real NVAPI. If a game loses DLSS after you add DXVK on Windows, that is expected, because DXVK’s Direct3D 11 is not NVIDIA’s driver. Delete the DXVK DLLs for that game (F12). Do not use DXVK or DLL swaps in games with anti-cheat; see Is DXVK safe?
Questions people ask
How do I get DLSS with DXVK on Linux?
Use Proton, which per the dxvk-nvapi README enables it by default for NVIDIA GPUs in version 9 and newer, or in plain Wine add dxvk-nvapi's DLLs and set DXVK_ENABLE_NVAPI=1. The game must also support DLSS on your NVIDIA card. We could not test either route.
Is NVAPI enabled in Proton?
The dxvk-nvapi README says it is on by default in Proton 9 and newer. Proton also has variables to force or disable it. We have not verified it on a Proton build.
Does DXVK break DLSS on Windows?
On Windows a game talks to NVIDIA's real NVAPI, and DXVK's Direct3D 11 is not NVIDIA's driver, so losing DLSS after copying DXVK in is expected. Remove DXVK for that game.
Can AMD or Intel GPUs use dxvk-nvapi?
It is NVIDIA-only by default. Community tools such as OptiScaler map DLSS inputs to FSR or XeSS. We describe them but have not tested or endorsed them.
What does 'dxvk-nvapi is disabled globally for this bottle' mean?
It refers to a Bottles setting for dxvk-nvapi, as reported. Enable the toggle for the bottle.
Sources
- dxvk-nvapi · accessed 2026-11-07
- DXVK README at v3.1.1 · accessed 2026-11-07
- GamingOnLinux: Proton Experimental expands NVIDIA DLSS support · accessed 2026-11-07