GUIDE · DEVELOPERS · FROM UPSTREAM SOURCES, NOT BUILT BY US
DXVK Native for game developers
How we checked this
Player or developer?
Playing a Windows game on Linux, Steam Deck or Wine? This is not for you: Proton and launchers use the ordinary DXVK. Read What is DXVK? and DXVK on Linux. Porting a Direct3D 9 or 11 renderer to Linux? Keep reading.
What DXVK Native is
It builds DXVK’s Direct3D 9, 11 and DXGI implementations as Linux shared libraries instead of Windows DLLs, so a native Linux build of a game can call them directly. It provides no Wine and does not emulate the Win32 API beyond what its headers cover. Milestones from the release notes:
- 2.0 (November 2022): upstreamed into DXVK.
- 2.1: GLFW as a window backend.
- 2.4: several window backends selectable at run time with
DXVK_WSI_DRIVER, and ABI versioning. - 2.5: SDL3 added.
Getting it
Releases from 2.0 have carried an archive named dxvk-native-<version>-steamrt-sniper.tar.gz, built inside the Steam Runtime “sniper” container, with 64-bit libraries under usr/lib and 32-bit under usr/lib32. Our research notes found no native archive on the 3.1 release and one of about 18 MB on 3.1.1. Distribution packages exist for some systems; we did not check them. To build it yourself see building from source.
Windowing backends
DXVK Native has no Windows window handles. It needs SDL3, SDL2 or GLFW to create windows and surfaces; its build stops with an error if none is available. At run time DXVK_WSI_DRIVER chooses which one to use (environment variables). The variable was spelled DXVK_WSIDRIVER before 2.4.
Porting gotchas
The README lists differences from building against Microsoft’s headers. We could not read that list in our environment, so we do not paraphrase it. One example we know of from our research: code that uses __uuidof on variables may need changes with the MinGW-based headers DXVK Native uses. Read the README section for the full list.
DXVK Native on macOS?
Master gained some DXVK Native build fixes for macOS after 3.1.1 (September and October 2026, unreleased). It is not a supported target and no support statement came with the fixes.
Developer checklist
- Direct3D 9 or 11 renderer, not 12.
- 64-bit and 32-bit libraries from the right folders.
- A window backend available and
DXVK_WSI_DRIVERset if you need to choose. - The ABI version of the release you ship against.
Related: releases and other layers.
Questions people ask
What is DXVK Native?
A build of DXVK as Linux shared libraries so a native Linux port of a game can keep its Direct3D 9 or 11 renderer without Wine. Upstream merged it in DXVK 2.0.
Can players use DXVK Native?
No. It does nothing for Windows games run through Wine or Proton. Players want the normal DXVK, which Proton and launchers already use.
Does DXVK Native work on Windows?
No, it is a Linux build. On Windows you use the normal DXVK DLLs.
Which window library does DXVK Native use?
SDL3, SDL2 or GLFW. DXVK 2.4 added runtime selection with DXVK_WSI_DRIVER. At least one must be available to build it.
Where is the DXVK Native download?
Releases from 2.0 carried a dxvk-native-<version>-steamrt-sniper.tar.gz archive, according to our research notes; 3.1 listed none and 3.1.1 listed one. Check the release page, and see the build page for building it yourself.
Sources
- DXVK README at v3.1.1 (DXVK Native section) · accessed 2026-11-07
- DXVK 2.0 release notes · accessed 2026-11-07
- DXVK 2.4 release notes · accessed 2026-11-07