Don't want to see articles from a certain category? When logged in, go to your User Settings and adjust your feed in the Content Preferences section where you can block tags!
We do often include affiliate links to earn us some pennies. See more here.

DXVK, the translation layer that converts Direct3D calls to Vulkan for use with Wine and Proton, has a big new release out with version 2.0. This is one of the ways that Proton performs so well for Windows games on Linux desktop and Steam Deck.

For this, you will need to ensure you have up to date drivers, they said any Vulkan 1.3 capable driver and Wine version are required now. The new recommend versions are:

Driver Required version Recommended version
AMD (RADV) 22.0 22.2
Nvidia 510.47.03 520.56.06
Intel (ANV) 22.0 22.2

As for what's new? A lot! As expected from a major version bump.

Firstly, DXVK-Native, that provides Vulkan support for Native Linux applications has now been upstreamed and merged into DXVK directly so that it "can be used as a drop-in replacement to port D3D applications without having to change rendering code". This is really great and for developers who are looking to port their games, it's breaking down another barrier.

One of the most exciting changes is to shader compiling. Unless games already have their shaders ready, like you see in Steam when it downloads them for you, there will often be a lot of stuttering as the game builds it up with DXVK as you play. That's now changed! If you have drivers that support what's needed, the "shaders will now be compiled at the time the game loads its D3D shaders, rather than at draw time" resulting in reduced or eliminated shader compile stutter. There's some caveats with this though like some games only loading their shaders as you play anyway, 32-bit games may stutter and NVIDIA uses more space.

I cannot stress how excited I am for the above on both Steam Deck and Linux desktop!

Other highlights:

  • D3D9
    • Reduce the likelihood of running out of address space in 32-bit D3D9 games
    • Reading from an active render target in D3D9 games is now properly supported, which previously caused rendering artifacts on newer AMD hardware and required driver-level workarounds. This affects a number of games, including GTA IV.
    • The D3D9 alpha test implementation was changed to more closely match the behaviour of Nvidia's implementation, which fixes inaccuracies in various games.
  • D3D10
    • Removal of some unused bits
  • D3D11
    • DXVK now exposes D3D11 Feaure Level 12_1 with the following newly added features:
      • Tiled Resources up to Tier 3, provided that the corresponding Vulkan sparse binding and sparse residency features are supported
      • Conservative Rasterization up to Tier 3, provided that the corresponding Vulkan conservative rasterization features are supported.
      • Rasterizer Ordered Views, provided that the corresponding Vulkan fragment shader interlock features are supported.
    • Closer to Windows behaviour for "immediate contexts and deferred contexts", might help "improve compatibility to third-party libraries and mods that hook into the D3D11 immediate context specifically, and reduces CPU overhead since some frequently used code paths are now more specialized for each context type".
    • More optimizations to reduce CPU overhead in games like Assassin's Creed: Origins and God of War.

There's also numerous game-specific bug fixes including issues solved for: Alan Wake, Alice Madness Returns, Anomaly: Warzone Earth, Beyond Good and Evil, Dragon Age Origins, Empire: Total War, Final Fantasy XV, Grand Theft Auto IV, Heroes Of Annihilated Empires, King Of Fighters XIII, Metal Gear Solid V: Ground Zeroes, Sonic Generations, Spider Man: Shattered Dimensions, The Ship, Warhammer Online and Ys Seven.

Incredible work from all involved to make Linux gaming better than ever.

For Steam Deck users: you'll have to wait for SteamOS updates to bring in a new driver for support for all the features. Some of it is not yet ready in the Mesa GPU drivers for either desktop or Steam Deck.

Article taken from GamingOnLinux.com.
38 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. You can also follow my personal adventures on Bluesky.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
20 comments

Arehandoro Nov 10, 2022
Impressive!
mr-victory Nov 10, 2022
If you have drivers that support what's needed, the "shaders will now be compiled at the time the game loads its D3D shaders, rather than at draw time" resulting in reduced or eliminated shader compile stutter.
Finally graphics pipeline library is merged into a stable branch! Now Imwait for stable Proton to pick this up...
For this, you will need to ensure you have up to date drivers, they said any Vulkan 1.2 capable driver and Wine version are required now
The release announcement mentions Vulkan 1.3, not 1.2
Liam Dawe Nov 10, 2022
For this, you will need to ensure you have up to date drivers, they said any Vulkan 1.2 capable driver and Wine version are required now
The release announcement mentions Vulkan 1.3, not 1.2
Fixed, thanks for the note, glad I caught this comment. In future, be sure to send a correction instead so we don't miss it.
YoRHa-2B Nov 10, 2022
Now Imwait for stable Proton to pick this up...
FWIW Proton 7.0 won't get this since we don't want to bump the hw/driver requirements on a stable release. Next major update should have it though, and this has basically been in Experimental for quite some time now.
mrdeathjr Nov 10, 2022
In my case stay testing lastest git (most of this changes comes with 2.0) and shader stutter are reduced so much in some unreal engine 3 games: for now test damnation and rise of argonauts*





*them are part of next bunch of testing titles

In both games with i had nvidia geforce gtx 1050 have much stutter




Last edited by mrdeathjr on 10 November 2022 at 6:18 pm UTC
dpanter Nov 10, 2022
In my case stay testing lastest git (most of this changes comes with 2.0) and shader stutter are reduced so much in some unreal engine 3 games: for now test damnation and rise of argonauts

In both games with i had nvidia geforce gtx 1050 have much stutter

Quick note to say I deeply appreciate your games testing and it always makes me happy to see your posts. Double thumbs up!

On another note, Debian currently rolls with Mesa 22.2.0 (testing), 22.2.3 (sid) and 22.3.0 (experimental)
Of course in Siduction we also have 23.0-git.
Comandante Ñoñardo Nov 10, 2022
If you have drivers that support what's needed,

What do you mean with that, exactly?
Blisto Nov 10, 2022
What do you mean with that, exactly?

It means your Vulkan driver needs to implement the `VK_EXT_graphics_pipeline_library` extension to use the feature. The only currently released stable driver which supports it is Nvidias 520 series drivers. AMD (radv) and Intel (ANV) are still working on it.
STiAT Nov 10, 2022
Now Imwait for stable Proton to pick this up...
FWIW Proton 7.0 won't get this since we don't want to bump the hw/driver requirements on a stable release. Next major update should have it though, and this has basically been in Experimental for quite some time now.

And it helps. It really reduces stuttering in games a lot for me. An example would be moving on horse preloading in KCD: Deliverance (maybe shadows/foilage?) and I think in God of War, since I had odd stutters but using a new nvidia driver and experimental they disappear.

May be a coincident though. I doubt it, since those were very prominent and they magically disappeared.
Comandante Ñoñardo Nov 11, 2022
What do you mean with that, exactly?

It means your Vulkan driver needs to implement the `VK_EXT_graphics_pipeline_library` extension to use the feature. The only currently released stable driver which supports it is Nvidias 520 series drivers. AMD (radv) and Intel (ANV) are still working on it.

I have the 520.56.06 version..

In theory, this should improve Lutris and Bottles gaming.

I just checked and this version of DXVK is not yet available on lutris or bottles
t3g Nov 11, 2022
I guess this screws over Ubuntu 22.04 users unless they upgrade to 22.10, wait for a backport, or move to Pop_OS which has 22.2 and 6.0.6 of the Linux kernel right now.
CatKiller Nov 11, 2022
View PC info
  • Supporter Plus
I guess this screws over Ubuntu 22.04 users unless they upgrade to 22.10, wait for a backport, or move to Pop_OS which has 22.2 and 6.0.6 of the Linux kernel right now.
https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa (actually, the standard repositories carry 520.56.06 without needing the PPA)

https://launchpad.net/~kisak/+archive/ubuntu/kisak-mesa

Mesa (and the kernel) will also get standard upgrades on LTS releases following the Hardware Enablement cadence.


Last edited by CatKiller on 11 November 2022 at 4:30 am UTC
mr-victory Nov 11, 2022
I just checked and this version of DXVK is not yet available on lutris or bottles
Download DXVK from github and add it to Lutris/Bottles, then.
Pop_OS which has 22.2 and 6.0.6 of the Linux kernel right now.
AFAIK you need Mesa development drivers for the stutter-reducing extensions, even 22.2 is not enough.
TheRiddick Nov 11, 2022
Be nice if one day they can get full HDR support going. Guess we will need to wait for it to come to the Linux Desktop.
Blisto Nov 11, 2022
I guess this screws over Ubuntu 22.04 users unless they upgrade to 22.10, wait for a backport, or move to Pop_OS which has 22.2 and 6.0.6 of the Linux kernel right now.

Only mesa 22.0 is needed to use dxvk 2.0 🙂
Comandante Ñoñardo Nov 11, 2022
I just checked and this version of DXVK is not yet available on lutris or bottles
Download DXVK from github and add it to Lutris/Bottles, then.

Even if I manually download and paste dxvk-2.0 folder in the right place, Lutris and bottles don't show it in their respective dxvk config menu.

Lutris DXVK config data is located in the file dxvk_versions.json

I don't know where Bottles store its DXVK config info.

LUTRIS and BOTTLES DEVS, do your job so I can try this!
tuubi Nov 11, 2022
View PC info
  • Supporter Plus
I just checked and this version of DXVK is not yet available on lutris or bottles
Download DXVK from github and add it to Lutris/Bottles, then.

Even if I manually download and paste dxvk-2.0 folder in the right place, Lutris and bottles don't show it in their respective dxvk config menu.

Lutris DXVK config data is located in the file dxvk_versions.json

I don't know where Bottles store its DXVK config info.

LUTRIS and BOTTLES DEVS, do your job so I can try this!

Seems like you can just type in the name of the folder in `~/.local/share/lutris/runtime/dxvk/` to the DXVK version field in Lutris. In your case, type in "dxvk-2.0" and it should be picked up.
Grogan Nov 12, 2022
You can also just symlink or name it the same as the current default version (latest) in ~/.local/share/lutris/runtime. That's how I do it, and I remove write permissions from mine so lutris can't ever overwrite my build with runtime updates.

I just removed v1.10.3 (it was my build anyway) and symlinked it to my v2.0 that I dropped in.
v1.10.3 -> v2.0

Then, my dxvk version field in Runner Options still says v1.10.3 and it loads the one I want it to.

I find that easier than trying to enter bogus info in that dxvk_versions.json file to get it to show up in the drop list. I didn't realize you could just type the version (directory name) in that field lol

That took care of Lutris last night, but I really wanted this for Steam where I play more shader heavy DirectX 11 games. So I fixed up a custom build of Proton-GE, and updated the dxvk sources (to the v2.0 tag) within it. The only proton patch that wouldn't apply was dxvk_async and since I don't use that, I just omitted it instead of trying to fix it. (It might just be a matter of rebasing it but I was too impatient to look at it)
hardpenguin Nov 12, 2022
520 line of NVIDIA drivers is not yet in Debian Sid so I guess I'll have to wait o.O
Adad Nov 15, 2022
Great news, even for Windows users. I use dxvk on W10 for GTA IV and it does wonders, the former makes the latter playable at last.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.