-
Fix Windows NVAPI loading the gfx1101 build on every other AMD GPU
released this
2026-10-18 18:19:37 +02:00 0.1.5 shipped one d4r/zluda/nvapi64.dll (the gfx1101 build) for all
targets, and compat_nvapi_path() preferred it over d4r/nvapi//.
Nothing on Windows ever set D4R_GPU_ARCH, so on any other GPU NVAPI
failed with "No selected gfx1101 device", NGX CUDA init failed, and
DLSS stayed unavailable (black frames, no OptiScaler upscaler section).-
Select the NVAPI per architecture; never fall back to a shared DLL
in a multi-target folder, and report a missing build by name. -
The loader and runtime publish D4R_GPU_ARCH and D4R_GPU_LUID for the
game's adapter, so NVAPI picks the right device with several GPUs. -
nvapi64.dll exports the target it was built for; the runtime refuses
a mismatch, and the packager and d4r-check read the same marker. -
Release packaging no longer ships d4r/zluda/nvapi64.dll and rejects
NVAPI builds for the wrong target, without a marker, or missing. -
Move target resolution, device matching and loader choice into
gpu_selection.h; regression tests cover all 11 targets, bad or
missing D4R_GPU_ARCH, mixed installs, multi-GPU and missing files. -
d4r-check: accept the FSR keys in the shipped d4r.ini.
Downloads
-