DXVK 0.70 Released With Direct3D 10 Support

DXVK, the Vulkan-based translation layer for Direct3D 11, was updated to version 0.70 a few minutes ago, bringing Direct3D 10 support.

DXVK allows running Direct 3D 11, and with this release, Direct3D 10 games (and applications) on Linux using Wine. It aims to provide support for D3D11, feature level 11_0, and D3D10, feature level 10_1. Missing features include predication (which is work in progress) and stream output.

To be able to run Direct3D 10 (D3D10) games, you'll need the native d3dcompiler_43.dll file which is available via winetricks (use winetricks d3dcompiler_43 to install it).

Crysis 1 game Vulkan DXVK Linux
Crysis 1 using Vulkan with DXVK on Linux; image credits: DXVK GitHub

The new D3D10 code in DXVK implements most of the Direct3D 10.1 core API and shader reflection API.

There are some D3D10 features that are not supported by DXVK though:

  • The effects API
  • The D3D10-specific text filter and the DXGI_FORMAT_R1_UNORM image format
  • D3D10 Counters are currently not implemented
  • Stream Output is currently not supported in the D3D11 backend

The DXVK developers note that using the current D3D10 implementation in DXVK, you should be able to run games like Assassin's Creed 1 (the MSAA option is not available in the game though), the 64-bit GOG version of Crysis 1 (on Mesa 18.1 enabling RADV_DEBUG=nohiz may be needed to avoid corrupted shadows; the issue is fixed in Mesa 18.2), and Just Cause 2 (enabling SSAO may crash the game though).

They say that the 32-bit Steam version of Crysis 1 probably doesn't work, although an user says that the Steam version works in his case.

Version 0.70 of DXVK also implements D3D11.1 ClearView method and D3D11.1 extended double instructions.

DXVK can be downloaded from GitHub, with precompiled binaries being available on its releases page, but it's easier (and most users probably make use of this) to use Lutris to run your games and simply set the DXVK version you want to use from this applications. You can read more about Lutris and DXVK here.