!hzgkCxLtCOTmFXGauj:nixos.org

NixOS Gaming

614 Members
Gaming things, my hands are typing words.166 Servers

Load older messages


SenderMessageTime
22 Mar 2025
@codebam:fedora.imSeanwell it doesn't happen in windows itself02:05:28
@olivia:computer.surgeryoliviathere are some environment variables in the vkd3d README that configure their shader cache layers that might be worth fiddling with02:06:03
@codebam:fedora.imSeanshould I try disabling shader cache?02:07:53
@olivia:computer.surgeryoliviapossibly02:08:06
@het_dinhe-galju:tchncs.deHayden R. (they/them)Prob02:08:09
@olivia:computer.surgeryoliviaoooh02:08:41
@olivia:computer.surgeryolivia
            if (vkd3d_config_flags & VKD3D_CONFIG_FLAG_PIPELINE_LIBRARY_LOG)
                INFO("Ignoring mismatched driver for CachedPSO. Continuing as-if application did not provide cache.\n");
02:08:51
@olivia:computer.surgeryoliviathat looks juicy02:08:57
@olivia:computer.surgeryolivianvm, this is a different kind of error condition02:09:46
@codebam:fedora.imSeanno it does the same thing with shader cache disabled02:13:06
@codebam:fedora.imSeanI think that's just the steam cache anyways, not the game cache02:13:22
@olivia:computer.surgeryoliviaoh, how are you disabling the shader cache?02:13:36
@codebam:fedora.imSean VKD3D_SHADER_CACHE_PATH=0 02:13:44
@olivia:computer.surgeryoliviayeah, that was the one I had in mind, but I think it kinda disables the wrong half of the cache here02:14:41
@olivia:computer.surgeryolivia I'm wondering whether there's a way to get vkd3d to stop advertising support for D3D12_FEATURE_SHADER_CACHE, so that the application stops trying to do manual shader cache management 02:15:26
@olivia:computer.surgeryolivia(under the hypothesis that the application is either misusing the shader cache, or that vkd3d's compatibility check is wrong, but that vkd3d's internal shader cache might still work fine here)02:16:09
@olivia:computer.surgeryolivialooks like vkd3d advertising this unconditionally02:17:00
@olivia:computer.surgeryoliviahow difficult would it be for you to test a vkd3d patch?02:17:07
@codebam:fedora.imSeansure I can test02:17:20
@olivia:computer.surgeryoliviaalso, would it be possible to confirm that the PSO hash mismatch messages are correlated to the stutters with higher confidence?02:17:54
@olivia:computer.surgeryoliviapossible we're totally looking in the wrong place here02:17:59
@codebam:fedora.imSeansure let me double check02:18:11
@codebam:fedora.imSeanyes they definitely correlate02:20:54
@olivia:computer.surgeryoliviacool!02:22:57
@olivia:computer.surgeryolivia alright, try this:

diff --git a/libs/vkd3d/device.c b/libs/vkd3d/device.c
index a14d30bd..47ad210c 100644
--- a/libs/vkd3d/device.c
+++ b/libs/vkd3d/device.c
@@ -4648,13 +4648,9 @@ static HRESULT STDMETHODCALLTYPE d3d12_device_CheckFeatureSupport(d3d12_device_i
                 return E_INVALIDARG;
             }
 
-            /* We cannot query shader cache features from the Vulkan driver,
-             * but all relevant drivers have their own disk cache, so we'll
-             * advertize support for the AUTOMATIC_*_CACHE feature bits. */
-            data->SupportFlags = D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO |
-                    D3D12_SHADER_CACHE_SUPPORT_LIBRARY |
-                    D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE |
-                    D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE;
+            /* Don't advertise shader cache support, to work around a possible
+             * shader cache problem with Monster Hunter Wilds */
+            data->SupportFlags = D3D12_SHADER_CACHE_SUPPORT_NONE;
 
             TRACE("Shader cache support flags %#x.\n", data->SupportFlags);
             return S_OK;
02:23:06
@olivia:computer.surgeryolivia alright, try this:

diff --git a/libs/vkd3d/device.c b/libs/vkd3d/device.c
index a14d30bd..47ad210c 100644
--- a/libs/vkd3d/device.c
+++ b/libs/vkd3d/device.c
@@ -4648,13 +4648,9 @@ static HRESULT STDMETHODCALLTYPE d3d12_device_CheckFeatureSupport(d3d12_device_i
                 return E_INVALIDARG;
             }
 
-            /* We cannot query shader cache features from the Vulkan driver,
-             * but all relevant drivers have their own disk cache, so we'll
-             * advertize support for the AUTOMATIC_*_CACHE feature bits. */
-            data->SupportFlags = D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO |
-                    D3D12_SHADER_CACHE_SUPPORT_LIBRARY |
-                    D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE |
-                    D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE;
+            /* Don't advertise shader cache support, to work around a possible
+             * shader cache problem with Monster Hunter Wilds */
+            data->SupportFlags = D3D12_SHADER_CACHE_SUPPORT_NONE;
 
             TRACE("Shader cache support flags %#x.\n", data->SupportFlags);
             return S_OK;
02:23:11
@codebam:fedora.imSeanokay let me figure out how to build proton 😅02:23:58
@olivia:computer.surgeryoliviahahaha good luck02:26:06
@olivia:computer.surgeryolivia looks like vkd3d-proton is in nixpkgs 02:26:36
@codebam:fedora.imSeanoh, should I just use that?02:26:52

Show newer messages


Back to Room ListRoom Version: 10