Bottles icon indicating copy to clipboard operation
Bottles copied to clipboard

[Request] Implement DXVK state cache download

Open shuriken1812 opened this issue 2 years ago • 0 comments

Is your feature request related to a problem? Please describe. DXVK state cache avoids major stutters and lags.

Describe the solution you'd like Steam distributes shader cache files, not dxvk state cache files. The state cache files describe how to compile the shaders before draw time. The problem is from Direct3D to Vulkan translation trying to compile compile shaders at draw time rather than compiling pieces ahead of time and linking at draw time like Direct3D does. Even if the shaders are cached on disk, disk accesses are too slow to avoid stutter from the sheer quantity of shaders involved.

Additional context

As an example Lutris provides the same for Overwatch and few other games where this really matters. https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/Overwatch.tar.xz

Apex legends - someone on reddit maintains the DXVK state cache for apex legends on reddit he also has a good info on his thread.

Cache files go in this path - /.local/share/Steam/steamapps/shadercache/1172470/DXVK_state_cache/gamename.dxvk-cache examples would be example - /.local/share/Steam/steamapps/shadercache/1172470/DXVK_state_cache/Phasmophobia.dxvk-cache

To merge caches you can use - https://github.com/DarkTigrus/dxvk-cache-tool also lutris has a build here

shuriken1812 avatar Mar 10 '22 17:03 shuriken1812