https://bugs.winehq.org/show_bug.cgi?id=57999
Francisco Casas fcasas@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fcasas@codeweavers.com
--- Comment #3 from Francisco Casas fcasas@codeweavers.com --- This error looks like a NULL pointer dereference on vkd3d-shader's HLSL compiler copy-propagation. This happens during loop-unrolling, which was introduced on vkd3d 1.15, is the version currently shipped with wine.
There has been some work an a couple of fixes on copy-propagation after 1.15, but I am not sure any of these fixes a null dereference, so this is worth looking into, it would be nice to have the shaders that caused this issue.
I realized that the game files contain several shaders, apparently provided by the Torque game engine, I tried compiling them, using valgrind, with several vkd3d versions, and it detected no problem.
I also ran the game using current proton-experimental and the VKD3D_SHADER_DUMP_PATH environment variable to dump the (pixel and vertex) shaders the application wants to compile, but none of them showed any issue.
It is worth noting that the game doesn't close for me with proton-experimental, but gets stuck on loading instead. The game runs properly on the older Proton 9.0.
So I ran the game using the Windows Steam client through wine and to my surprise it generated compute shaders this time, but none of them showed any issue. The game also gets stuck on loading though.
I suspect that the Torque engine procedurally generates the shaders and they might vary depending on the platform.
So can you run the game again with the VKD3D_SHADER_DUMP_PATH env set so that the shaders are dumped on a local folder and then send these as a .zip?