Anonymous edits have been disabled on the wiki. If you want to contribute please login or create an account.


Warning for game developers: PCGamingWiki staff members will only ever reach out to you using the official press@pcgamingwiki.com mail address.
Be aware of scammers claiming to be representatives or affiliates of PCGamingWiki who promise a PCGW page for a game key.

DXVK

From PCGamingWiki, the wiki about fixing PC games
DXVK
Developers
doitsujin
Joshua-Ashton
K0bin
Community
Release dates
Windows January 14, 2018[Note 1]

Key points

Vulkan-based translation layer for Direct3D 9-11 games used by e.g. Proton to allow Windows games to run on Linux.
Windows is not officially supported, though generally works, and may even improve performance compared to native.

General information

Official wiki
Official repository

Availability

Source DRM Notes Keys OS
Official website
DRM-free
Windows
Linux

Installation

Instructions for Windows:
  1. Consult the API section of the PCGW article for the appropriate game for the following details:
    • The Direct3D version used by the game (9, 10, or 11).
    • The bitness of the game executable (32-bit or 64-bit).
  2. Download the latest dxvk-xxx.tar.gz from the official website.
  3. Open the archive in a archive manager such as 7-Zip.
  4. Extract the appropriate DLL files from the archive based on the information retrieved in step 1 to a temporary location.
    • Direct3D 9 games requires the d3d9.dll file.
    • Direct3D 10 games requires the dxgi.dll, d3d11.dll and d3d10core.dll files.
    • Direct3D 11 games requires the dxgi.dll and d3d11.dll files.
  5. Move the DLL files to the same folder as the game executable; typically <path-to-game> but might differ.
  6. Launch the game. DXVK should now automatically be used.
    • A third-party tool such as MSI Afterburner can be used to verify that the game is rendering using Vulkan.
    • If DXVK is not being loaded, see the the official wiki for common issues.
    • If the game fails to launch, the latest versions of the Vulkan Runtime might need to be installed on the system.

Uninstallation

Remove the installed DLL files from the game folder to uninstall DXVK.

Other information

dxvk-async

dxvk-async is a fork of DXVK that changes the compilation of pipelines (e.g. shaders etc) to be an asynchronous operation performed by a worker thread. This prevents the compile process from blocking the main thread which could otherwise cause noticable stutters in games.
Not supported anymore by the developer since it was superseded by graphics pipeline libraries support.[4]

dxvk-gplasync

dxvk-gplasync is a successor to dxvk-async that combines asynchronous compiling and pre-compiling of shaders.


Notes

  1. It is... debatable... which release version we should use. Technically speaking v1.0 was released on February 25, 2019[1] but is otherwise not really different than any other releases that predates it and came after, ergo I opted to see the very first public release, v0.20,[2] as the 'official' release date.[3]

References

  1. GitHub - doitsujin/dxvk - Version 1.0 - last accessed on 2022-09-24
  2. GitHub - doitsujin/dxvk - Version 0.20 - last accessed on 2022-09-24
  3. Verified by User:Aemony on 2022-09-24
  4. the async patch partially breaks the dxvk-cache · Issue #55 · Sporif/dxvk-async - last accessed on June 2023