
Flaubert
Published
PROTON_LOG=1 PROTON_USE_WINED3D=1 PROTON_NO_ESYNC=1 %command%
Starting the game initially led to a grey intro screen. From there the first level could be launched by pressing Enter
twice, but the characters would be invisible and all the textures would be messed up.
According to reports on the "LEGO Batman: The Videogame" page, this was due to a Vulkan problem, except the VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json
given solution was not working for me.
Then I tried to switch from Vulkan to WineD3D as indicated by TCperry1 on this page (PROTON_USE_WINED3D=1
), but it was still not working.
I activated Proton logs with PROTON_LOG=1
, and I took a look to the log file (mine was in ~/snap/steam/common/
).
Looking through the logs, I saw this error message repeated multiple times: err:d3dcompiler:compile_shader HLSL shader parsing failed.
After a little searching, I found this fix using winetricks: WINEPREFIX="/path/to/steamapps/compatdata/32330/pfx" winetricks d3dx9 d3dx9_43 d3dcompiler_43
If the winetricks command does not work, try the following:
- Remove the
/path/to/steamapps/compatdata/32330/pfx/
directory (wine prefix created by proton). - Launch the game from steam again to re-create a clean version of this prefix.
- Use the winetricks command.
- Launch the game once again.
More recent versions of proton may work (I didn't try).