protonscr

BlitzFX (Witcher 3 mod) only works with old version of DXVK, on Linux, and has major graphical issues.

dxvkclosed d3d11
doitsujin/dxvk#3711 · opened 2023-11-04 by t0mtee · updated 2024-11-23 · 9 comments · github
Tt0mtee 2023-11-04 github

Please describe your issue as accurately as possible.
There is a Witcher 3 mod called BlitzFX that greatly improves visuals, however the game doesn't load with DXVK, even when following the instructions in the comments. This may be an issue with the mod, however it's been seemingly discontinued as the dev is working on a seperate mod for the Next-Gen update, so it'd be great if it could maybe be fixed on DXVK's end.

If you use Windows, please check the following page: https://github.com/doitsujin/dxvk/wiki/Windows

Software information

Witcher 3 1.32, BlitzFX installed. Tried the ASI loader method and the Debug Console method.

System information

  • GPU: RX 6700 XT
  • Driver: 23.8.1
  • DXVK version: 2.3

Apitrace file(s)

Mediafire Download

For instructions on how to use apitrace, see: https://github.com/doitsujin/dxvk/wiki/Using-Apitrace

Log files

logs.zip

BBlisto91 2023-11-05 github

Testing on Linux through Proton and just using the regular installation instructions i am able to get the game launching with the mod up until commit https://github.com/doitsujin/dxvk/commit/6d72bc94f45617f707fd135d28292987315bac80 where it no longer starts.
By launching i mean that i can get to main menu and also use the mod menu fine, but it will crash shortly after starting to play in the actual game.

Edit: Actually using the Ultimate ASI Loader method described in the pinned comment makes it seemingly work fine also fully ingame before the regressing commit. After said commit it will still not start.

Tt0mtee 2023-11-05 github

I just tried this on Windows, using DXVK release 1.8.1 (so before that commit), and the same error occured.

BBlisto91 2023-11-05 github

From testing this together with the Ultimate ASI Loader i see it also seems it loads the d3d11.dll in the system32 directory which is why that doesn't work on Windows because it might hook on to the wrong one.

On Linux i can recreate a crash in the same place with dxvk 1.8.1 by making Proton use wined3d and then placing dxvk dll's next to exe with a added native override. The Proton log indicate that both dxgi and d3d11 from the exe folder gets loaded but also d3d11 from system32.
If i don't use wined3d and have dxvk 1.8.1 both in my wine system32 (don't do this on Windows) and also next to exe it will start correctly but the mod won't work. It only works if i delete the dxvk DLLs next to the exe so everything uses the system32 DLLs (again don't put dxvk in there on Windows). As said i am thinking this indicates it hooks on to the wrong thing when dxvk is placed next to the exe.

That is something dxvk can't do anything about and is one of the reasons why Windows can't be properly supported.
Though i don't know if it's ASI loader itself doing it or the mod.

Why the other method described doesn't work i don't know or if it is related to the above.

Tt0mtee 2023-11-05 github

Hmm that's interesting... honestly just gives me another reason to switch to Linux.
Is there no workaround on Windows? Absolutely none?
Furthermore, do you think the issue with the regressed commit can be fixed so outdated versions don't have to be used?

BBlisto91 2023-11-05 github

Hmm that's interesting... honestly just gives me another reason to switch to Linux.

Well it doesn't seem to be all sunshine and rainbows on Linux either. I have to turn off Nvidia hairworks for it to even start with the mod.
The TAA option seems majorly graphically broken and there are some other graphical issues. At least with 1.8.1.

Is there no workaround on Windows? Absolutely none?

I do not know as i haven't really messed with mixing translation layers or similar and such mods and tools on Windows. At least not from the official side of dxvk there isn't.

Furthermore, do you think the issue with the regressed commit can be fixed so outdated versions don't have to be used?

I am not a dev so i can't answer that specifically. I assume so, but i don't have any technical insight on the matter. If i were you I'd just play the native game on Windows if the mod is important to you.

Tt0mtee 2023-11-06 github

So ideally, DXVK will be updated to fix the regression in the commit, and we can then see if the graphical issues persist.

However, this is just a mod for an outdated version of a game. I can completely understand if this issue never gets updated, or the issues fixed. Thanks a bunch for the help and explanation so far.

Tt0mtee 2024-09-21 github

Hello again. Just want to check if there's any chance of this issue being looked into - I understand it's very niche and thus don't want to place any pressure on anyone to try resolve it.

Tt0mtee 2024-10-15 github

I've reinstalled Linux lately and have since gotten around to trying Blitz with DXVK 1.8.1.
My experience was that on 1.8.1, the game could be loaded and played and it all worked (including TAA and HairWorks), but it was a bit iffy getting there.

image
Here is the game with Blitz (with TAA) loaded. To get here, the game has to have been launched at least once without the ASI loader installed, and then once again with the ASI loader and Blitz installed so TAA can be disabled, and then once more so that the game loads and TAA can be enabled.

In my experience, TAA had to be disabled at boot to avoid huge issues, such as this:
image

I think this is really promising. Even back on 1.8.1, Blitz WAS working - even if getting there was dodgy. With any luck, the only issue preventing Blitz from working on modern DXVK versions is the crash when starting the game.

Tt0mtee 2024-11-23 github

The creator of BlitzFX made a surprise return and updated the mod - which now works perfectly on DXVK (at least on Linux) after adding WINEDLLOVERRIDES="D3D11=n,b". No need for the ASI loader or anything like that, it's basically plug and play.
Happy to close this :)
image

Launch options

DLLs