protonscr

Bioshock crashes at loading screen in DX9 mode, low resolution textures in DX10

dxvkclosed appid 2007
doitsujin/dxvk#1580 · opened 2020-04-20 by shoober420 · updated 2022-07-29 · 14 comments · github · game page · search this game
3 matching comments, n / p to jump
Sshoober420 2020-04-20 github

Software information

Bioshock (2007), high settings

System information

  • GPU: GTX 760
  • Driver: 440.82
  • Wine version: Proton 5.0-6
  • DXVK version: v1.5.5-21-g3d52ab36a

Log files

The original Bioshock will crash at the loading screen after starting a new game or loading a save game in DX9 mode, no matter what FSync and ESync is set to. DX10 mode runs, but it still requires that FSync and ESync be disabled in Wine / Proton to fix low resolution textures. (PROTON_NO_ESYNC=1 and PROTON_NO_FSYNC=1).

https://github.com/ValveSoftware/Proton/issues/388

Ddoitsujin maintainer 2020-04-20 github

Can you please test with master / 1.6.1? Reporting bugs with an old DXVK version is a bit annoying because these problems might have been fixed already.

KK0bin maintainer 2020-04-20 github

The textures look fine but i can reproduce the crash.

Windows:
BioShock Screenshot 2020 04 20 - 15 03 04 03
DXVK D3D10:
BioShock Screenshot 2020 04 20 - 15 00 41 10

The game ships d3dx10_33.dll and d3dx9_33.dll. Make sure the Wine overrides for those are set to native so it can actually use them instead of Wines problematic implementations.

Sshoober420 2020-04-20 github

I figured out how to install the latest DXVK versions into Proton, at least on Arch. Using the "dxvk-bin" package in the Arch AUR, I extracted the .dll files into the following directories.

32bit: /home/$USER/.local/share/Steam/steamapps/common/Proton 5.0/dist/lib/wine/dxvk

64bit: /home/$USER/.local/share/Steam/steamapps/common/Proton 5.0/dist/lib64/wine/dxvk

Anyway, here are the logs using DXVK v1.6.1 with the crash still present.

Sshoober420 2020-04-20 github

@K0bin
I'm almost for certain, Proton by default will use installed versions of DirectX if present.

Even so, if I use the "WINEDLLOVERRIDES=d3dx10_33=n" launch option, I still have low resolution textures unless I disable ESync and FSync.

What version of Wine are you using? I'm on Proton 5.0-6+DXVK 1.6.1

KK0bin maintainer 2020-04-20 github

I'm not using Wine. I've tried it with DXVK on Windows.

Sshoober420 2020-04-20 github

The low resolution textures are an issue with Wine itself, as @doitsujin pointed out. Thank you for clarifying and testing though.

KK0bin maintainer 2020-04-21 github

The D3D9 crash might be another case of #1318. Try running it with the evictManaged option.

Sshoober420 2020-04-21 github

Proton defaults to use “PROTON_FORCE_LARGE_ADDRESS_AWARE=1”, so that can’t be it.

KK0bin maintainer 2020-04-21 github

PROTON_FORCE_LARGE_ADDRESS_AWARE=1 extends the address space of 32bit processes from 2GB to 3GB. DXVK can still easily exceed that.

It works fine for me with the config option.

Sshoober420 2020-04-21 github

I’m saying that Proton already enables that option by default, so it’s not that.

I should also mention that the game launches successfully in DX9 mode when using the “PROTON_USE_WINED3D=1” option. So this is a DXVK issue directly.

KK0bin maintainer 2020-04-21 github

PROTON_FORCE_LARGE_ADDRESS_AWARE=1 is not enough to fix the problem and Proton does not turn on d3d9.evictManagedOnUnlock by default. So please just try that.

Sshoober420 2020-04-22 github

I enabled d3d9.evictManagedOnUnlock in my dxvk.conf and put it in the directory with Bioshock.exe (/home/$USER/.local/share/Steam/steamapps/common/Bioshock/Builds/Release). I still crash at the loading screen after selecting a save file or starting a new game.

BBlisto91 2022-06-03 github

If you are still around then try K0bin's new PR https://github.com/doitsujin/dxvk/pull/2663
Link to latest version as of this moment: https://github.com/doitsujin/dxvk/actions/runs/2570371500

Edit: Updated. K0bin has further improved it and fixed some crash issues introduced in the branch

KK0bin maintainer 2022-07-29 github

The low resolution textures with D3D10 are not a DXVK bug and the D3D9 crash should be fixed now.