Steam already use different directory for each games shader cache.
Check directory $HOME/.local/share/Steam/steamapps/shadercache,
each directory is named with a game's app id.
Several environment variable will be set before launching a game. Which direct both NVIDIA, Intel, and AMD driver to save shader cache to specific directory.
Nvidia
__GL_SHADER_DISK_CACHE_READ_ONLY_APP_NAME=steam_shader_cache;steamapp_merged_shader_cache
__GL_SHADER_DISK_CACHE_PATH=<HOME>/.local/share/Steam/steamapps/shadercache/<APP_ID>/nvidiav1
__GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1
__GL_SHADER_DISK_CACHE_APP_NAME=steamapp_shader_cache
Intel and AMD
MESA_DISK_CACHE_SINGLE_FILE=1
MESA_GLSL_CACHE_DIR=<HOME>/.local/share/Steam/steamapps/shadercache/<APP_ID>
MESA_GLSL_CACHE_MAX_SIZE=5G
MESA_SHADER_CACHE_MAX_SIZE=5G
MESA_DISK_CACHE_READ_ONLY_FOZ_DBS=steam_cache,steam_precompiled
MESA_SHADER_CACHE_DIR=<HOME>/.local/share/Steam/steamapps/shadercache/<APP_ID>
The way it works is sorta fine, since its rather quick for almost every
game. The problem is mainly for FF14, caching the first time takes 3h, and
every time i play another game, ff14 needs to recache for 40 minutes.
On Fri, 25 Jul 2025 at 23:52, Billli11 @.***> wrote:
Billli11 left a comment (ValveSoftware/Proton#8926)
https://github.com/ValveSoftware/Proton/issues/8926#issuecomment-3120475261Steam already use different directory for each games shader cache.
Check directory $HOME/.local/share/Steam/steamapps/shadercache,
each directory is named with a game's app id.Several environment variable will be set before launching a game. Which
direct both NVIDIA, Intel, and AMD driver to save shader cache to specific
directory.Nvidia
__GL_SHADER_DISK_CACHE_READ_ONLY_APP_NAME=steam_shader_cache;steamapp_merged_shader_cache
__GL_SHADER_DISK_CACHE_PATH=/.local/share/Steam/steamapps/shadercache/<APP_ID>/nvidiav1
__GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1
__GL_SHADER_DISK_CACHE_APP_NAME=steamapp_shader_cacheIntel and AMD
MESA_DISK_CACHE_SINGLE_FILE=1
MESA_GLSL_CACHE_DIR=/.local/share/Steam/steamapps/shadercache/<APP_ID>
MESA_GLSL_CACHE_MAX_SIZE=5G
MESA_SHADER_CACHE_MAX_SIZE=5G
MESA_DISK_CACHE_READ_ONLY_FOZ_DBS=steam_cache,steam_precompiled
MESA_SHADER_CACHE_DIR=/.local/share/Steam/steamapps/shadercache/<APP_ID>—
Reply to this email directly, view it on GitHub
https://github.com/ValveSoftware/Proton/issues/8926#issuecomment-3120475261,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APLFBP6ZP72XQPKVTHR2UZD3KKRKBAVCNFSM6AAAAACCDNQ3YWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTCMRQGQ3TKMRWGE
.
You are receiving this because you authored the thread.Message ID:
@.***>
MESA_DISK_CACHE_READ_ONLY_FOZ_DBS=steam_cache,steam_precompiledx2 2025-07MESA_DISK_CACHE_SINGLE_FILE=1x2 2025-07MESA_GLSL_CACHE_DIR=<HOME>/.local/share/Steam/steamapps/shadercache/<APP_ID>x2 2025-07MESA_GLSL_CACHE_MAX_SIZE=5Gx2 2025-07MESA_SHADER_CACHE_DIR=<HOME>/.local/share/Steam/steamapps/shadercache/<APP_ID>x2 2025-07MESA_SHADER_CACHE_MAX_SIZE=5Gx2 2025-07__GL_SHADER_DISK_CACHE_APP_NAME=steamapp_shader_cachex2 2025-07__GL_SHADER_DISK_CACHE_PATH=<HOME>/.local/share/Steam/steamapps/shadercache/<APP_ID>/nvidiav1x2 2025-07__GL_SHADER_DISK_CACHE_READ_ONLY_APP_NAME=steam_shader_cache;steamapp_merged_shader_cachex2 2025-07__GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1x2 2025-07
Seems like im the only one with this question, my steam forum post is the one that shows up at the top when you google, and its left unanswered.
I tried to specify a different cache location, but all it did was generate the cache at the default location and wiping anything that was already cached, and then trying to read from my location which fails since that's not where it cached it. FF14 detects this as tampering of game files and refuses to launch.
Proton version doesn't seem to matter, i have tried 9, Hotfix, GE, and runtime, with multiple games.
I understand why it only keeps the cache from a single game, since it can take up space, but i got 20TB of storage, im good spending a few hundred GB on shader caches. Some games takes 2 seconds to cache shaders while others takes several hours. And its not like i want to skip it since it does affect performance and runs better if i let it finish.