DXVK is one of the tools included in the Steam Play function from Steam. It is a fantastic tool thate can convert Microsoft DirectX 11 and DirectX 10 graphics calls to Vulkan, the open source graphics API that is compatible with Linux. To use DXVK, in addition to Wine and Vulkan, you obviously need a Vulkan-compatible GPU.
While DXVK is still primarily used on Steam Play, it is not the only place Linux users can take advantage of this fantastic technology. It also contributes the Vulkan-based D3D11 implementation for Linux and Wine, Regarding performance and optimization when running Direct3D 11 games on Wine since they also provide support for Direct3D9.
D3D9 for DXVK should not be confused with the VK9 initiatives for D3D9 support assigned to Vulkan, as this is a separate initiative that is still in development. D3D9 proposes DXVK support to convert API calls from D3D9 to D3D11, and will then use the D3V11 to Vulkan conversion built into DXVK.
What's new in DXVK 1.5?
In this new version, one of the most outstanding novelties is that the code bases of the D9VK and DXVK projects were merged.
D9VK developments were transferred to the master branch of the DXVK repository. D9VK is evaluated by the developer as ready to use and implementing almost all of its intended functionality. Therefore, all DXGI implementations (DirectX Graphics Infrastructure), Direct3D 11, Direct3D 10 and Direct3D 9 About the Vulkan Graphics API now they will be developed in a single code base.
The development of D9VK will continue as part of the DXVK repository in the form of a front-end, for which the original developer of D9VK will be responsible.
Plans for further development include the removal of some known issues (bump mapping, premodulation), the implementation of the software cursor (in addition to the already available hardware cursor support), the addition of the ComposeRects method defined in the D3D9Ex specification, and the ability to define custom frame colors.
With this Direct3D 9 support gained after integration with D9VK, the new version fixes a resource leak and solve problems with the game Dark Souls: Prepare to Die Edition.
Compared to DXVK 1.4.6, it has been improved the implementation of a debug information block displayed on top of the current image (display screen, HUD).
The HUD provides the output of separate statistics on the distribution of system memory and video memory, as well as the memory areas used during Vulkan operation.
HUD fill and fill queue statistics now update every 0.5 seconds on the HUD. Fixed bugs appearing in Atelier Ryza, Crysis 3, Fifa 19, Halo MCC, and Star Citizen games.
How to add DXVK support to Linux?
DXVK requires the latest stable version of Wine to run. So, if you don't have this installed. Now we will only have to download the latest stable package of DXVK, this one we found In the following link.
After having made the download now we are going to unzip the package just obtained, this can be done with from your desktop environment or from the terminal itself by executing in the following command:
tar -xzvf dxvk-1.5.tar.gz
Then we access the folder with:
And we execute the sh command to run the install script:
sudo sh setup-dxvk.sh install
setup-dxvk.sh install --without-dxgi
When installing DXVK in a prefix of Wine. The advantage is that Wine vkd3d can be used for D3D12 games and DXVK for D3D11 games.
Also, the new script allows you to install the dll as symbolic links, making it easier to update the DXVK to get more Wine prefixes (you can do this via the –symlink command).
How will you see the folder DXVK contains two other dlls for 32 and 64 bits these we are going to place them according to the following routes.
Where "user" you replace it with the username you use in your Linux distribution.
For 64 bits we put them in:
And for 32 bits in: