I got somewhat tired of waiting for this to be investigated and resolved, so I did some absolutely stupid shotgun debugging: https://github.com/HansKristian-Work/vkd3d-proton/compare/master...Saancreed:ac-shadows
This makes the game stable on my system, including on release builds with breadcrumbs disabled, but I'm not sure if it's just pure luck, or the issue really is somewhere in there. Feel free to give this a try; rebuild vkd3d-proton with changes I linked above then attempt to reproduce the hang, maybe it will fix them for you as well.
@Saancreed Sorry for the silly question but once I rebuild this, how do I set it up in my prefix ?
@Enla-tty If you're using some flavor of Proton, replace d3d12core.dll in files/lib/wine/vkd3d-proton/x86_64-windows under that Proton's directory with the one you built. This will affect every title you run with this Proton version and is necessary, because the Proton's launch script will always install this file into every prefix, on every launch. Otherwise, when using plan Wine, find your WINEPREFIX and replace $WINEPREFIX/drive_c/windows/system32/d3d12core.dll.
@Saancreed
Holy, it seems like it fixed my issue ! For clarity I had a similar crash but at another spot entirely, during the very first opening cutscene, when Nobunaga arrives and the priests kneel down. Now the cutscene seems to continue normally, I'll update if I have more issues.
I'm running on an RTX 3080, so it seems like it also affects this generation.
@Saancreed It didn't fully fix my issue, while it helped me for the first time at Tomoki's residence, it didn't at a later state in the game when the season's changed.
The following fixed my issue entirely for 20 hours into the game without any hangs, on release-build with breadcrumbs disabled:
ac_mirage_hashes, ARRAY_SIZE(ac_mirage_hashes), 0,
};
static const struct vkd3d_shader_quirk_info ac_shadows_quirks = {
NULL, 0, VKD3D_SHADER_QUIRK_FORCE_COMPUTE_BARRIER,
};
static const struct vkd3d_shader_quirk_hash ffxvi_hashes[] = {
/* On RADV 24.1.6 RDNA3, we seem to be plagued with a compiler bug/hardware quirk.
* It works on main, but only by chance.
I am able to reproduce the problem at that certain place, anything without VKD3D_SHADER_QUIRK_FORCE_COMPUTE_BARRIER will hang for me.
Running on a RTX 2080,
Driver: NVIDIA 610.43.03
@Boogadaba Good find, thanks! Having this narrowed down to a single quirk is certainly nice, but I suppose that also means there are more problematic shaders that my initial shotgun blast missed. Which is tough, because while more elegant, I have doubts if this is any more upstreamable.
Still, a known reliable workaround is better than unreliable or no workaround. I'll switch to your version to give it a try.
VKD3D_SHADER_QUIRK_FORCE_COMPUTE_BARRIERx1 2026-08WINEPREFIXx1 2026-08VKD3D_CONFIG=descriptor_heap,breadcrumbsx1 2026-07VKD3D_DEBUG=err`x1 2026-07d3d12core.dllx1 2026-08
I thought I would just create an issue for this here since I didn't find quite the same one here, and in case it hadn't been seen by the vkd3d-proton folks (and if it is actually a vkd3d-proton issue to begin with). Original post from the Proton repo, since it has info in more or less the same template as this repo and some maybe useful logs:
https://github.com/ValveSoftware/Proton/issues/8543#issuecomment-4659997084
TLDR: on Nvidia 595+, including 610, AC Shadows has several ingame spots where it will just freeze, with no apparent Xid (or really any) messages in dmesg.
On RTX 5000 series specifically, this issue is kind of masked by another 595 driver bug which instead causes Xid 109 hangs if descriptor heap is not used. If descriptor heap is enabled on RTX 5000, then both RTX 4000 and 5000 can repro this specific issue, otherwise RTX 4000 can repro without descriptor heap too.
The only known workaround so far is to build vkd3d-proton with --debug and enable breadcrumbs logging (
VKD3D_CONFIG=descriptor_heap,breadcrumbs VKD3D_DEBUG=erron RTX 5000), which gets rid of this hang altogether. I am not really sure if the "stuck in vkd3d waits" analysis by the OP that created the original issue is true, but I guess it's plausible since a debug build resolves the issue...Debug suggestions welcome! There is a post on the nvidia forums about this same issue which has an ingame location that triggers it: https://forums.developer.nvidia.com/t/595-release-feedback-discussion/362561/140. I have seen it happen at other locations too though.