How to use DXVK Async?
In Lutris i can choose dxvk versions, heroic doesn't seem to have that option. Or is a environment variable enough? I use Wine-GE.
24 Replies
other-emeraldOP•3y ago
*specifically for dishonored right now
optimistic-gold•3y ago
Wine-GE does not come with the DXVK Async patch AFAIR, but on the steam deck you can use GE-Proton and this one has it baked in.
Alternatively you can manually install async patch on the wine-GE prefix. Also remember to delete your prefix if you switch between wine and proton.
In either case you need to use DXVK_ASYNC=1 to enable it
other-emeraldOP•3y ago
how do I manually install it in the prefix?
Would be nice to choose in heroic itself.
I'm not dumb, but I have no idea how to use the Konsole for that. Drag and drop would be nice :KEKW:
optimistic-gold•3y ago
Easiest way would be to simply switch to the Proton-GE
adverse-sapphire•3y ago
The manual method when using Wine-GE would be to drop the DXVK Async dlls into the system32 folder of the game's prefix.
Considering Heroic creates an individual prefix for each game you install, this could be a tedious process if you wanted to apply this to multiple games. Which is why I agree there should be an option to change your DXVK version within Heroic.
other-emeraldOP•3y ago
oh ok, sounds doable.
In my async DXVK folder I have x32 and x64 dlls
Which one should I use? Same names in both folders
i guess x64
or x32 dlls in system32 and x64 dlls in syswow64? :Hmm:
adverse-sapphire•3y ago
Weirdly enough, it's the opposite way around lol
other-emeraldOP•3y ago
:ddHuh:
optimistic-gold•3y ago
You can also substitute the dlls in the HGL config folder. Dlls in the prefixes are linked to the source ones. I don't know if it's enough though, or if it will survive the update of the DXVK, but I've seen solution like this in the wild
adverse-sapphire•3y ago
Can confirm I do have some old prefixes set up like this. However any new prefix I've tried to create hasn't done this, so I wonder if anything's changed.
Also yeah, I know it seems backwards. But SysWOW64 is actually a folder for 32-bit dlls to be used on 64-bit systems.
correct-apricot•3y ago
WOW64 means: windows on windows 64bit
Hence why its for 32 bit windows system dlls
Ms is just terrible at naming things haha
And for legacy reasons im pretty sure they didnt rename the 64bit system folder.. Hence system32 haha
adverse-sapphire•3y ago
Yup. There are many naming conventions in Windows have stood around for decades and never changed lol.
correct-apricot•3y ago
Yep
other-emeraldOP•3y ago
Ok, very weird haha, but thanks :YEP:
Ok, thank you very much. That worked flawlessly.
Now pls devs, make it an option. 🙂
flat-fuchsia•3y ago
So just to be clear: if I have multiple games installed on heroic, the easiest option currently is to use GE proton which has DXVK Async already enabled (otherwise I'd need to manually place the DLL files into every prefix)? I'm on the Steam Deck for context
And on that note, where do I use 'DXVK_ASYNC=1'? Within Heroic or on the Steam launch options?
other-emeraldOP•3y ago
1 post Just switching to proton with already installed games is tricky, proton has a different folder structure for it's prefix. (also wine is recommended, not proton) Maybe your save games will not work anymore. idk.
DLLs, yes. But make sure to place the DLLs in the right place
2 post in heroic as environment variable.
flat-fuchsia•3y ago
Thank you 🙂 I've deleted the prefixes and reinstalled the games with proton selected.
flat-fuchsia•3y ago

flat-fuchsia•3y ago
And I think I've got this set up correctly for proton GE!
As I understand it, generally you should be using Wine GE for non steam games but Heroic uses proton in same way steam would
So until Wine GE comes with DXVK_ASYNC by default it seems like the easiest option (and not all that problematic) is to use Proton GE with the above variable?
DXVK 2.0 has vastly improved shader compilation, meaning DXVK-Async should not be necessary anymore
Wine-GE will never come with DXVK(-Async). They're always going to be separate things
optimistic-gold•3y ago
It's game dependent. Some load shaders only at the draw time, so they won't benefit from the changes in the DXVK 2.0 and ASYNC is still useful for these.
other-emeraldOP•3y ago
Isn't 2.0 only useful for dx11 games? I can be wrong of course. But that's what I remember.
correct-apricot•3y ago
dxvk provides dx9-11 support
vkd3d is for dx12
other-emeraldOP•3y ago
I know. But because of shader cache stutters. I'm pretty sure I read somewhere dxvk 2.0 is only helpful for dx11 games
But maybe/hopefully that's wrong 🙂