Repository navigation
v0.2.2-beta
Pre-release
Pre-release
Shaderless v0.2.2-beta
Major reliability, large-cache, and usability update fixing GitHub Issues #1, #2, and #3, plus library filtering, live Proton switch detection, and an in-app Support modal.
Highlights & What's Fixed
- Multi-part NVIDIA shader caches & configurable max cache size (
5–500 GB, default10 GB) (#1):- Fixes late-game shader eviction and NVIDIA's single-file
~2 GB(int32offset) truncation wall on huge Unreal Engine 5 games (such as Valor Mortis and The Blood of Dawnwalker). - Automatically splits
>40,000-pipeline compiles into clean batches and packs NVIDIAGLCacheacross<1.85 GBlock-free multi-part files (steamapp_merged_shader_cache+shaderless_part1..N) with zero duplicate copies — cutting legacy4.0 GBduplicated caches in half while preserving every overflow shader. - Configurable in ⚙️ Settings (
10 / 25 / 50 / 100 GBor custom5–500 GB) or via./run-cli.sh settings --max-cache-gb <5..500>for both NVIDIA (__GL_SHADER_DISK_CACHE_SIZE) and AMD Mesa (MESA_SHADER_CACHE_MAX_SIZE), overriding Steam's4 GBdefault inside Proton'suser_settings.py. - Legacy truncated
>=2 GBsingle-file caches are automatically markedStale (>2 GB Truncated)for a one-click rebuild.
- Fixes late-game shader eviction and NVIDIA's single-file
- Standalone recorded-pipeline compile fallback, AMD headless warmer fix & Flatpak Mesa linking (#2):
- Games whose static archives aren't directly extractable (such as CryEngine / Kingdom Come: Deliverance II and custom DX12 engines) now compile directly from recorded gameplay pipelines in
recording.db. - Disables
vk_khr_present_waitduring headless warmer runs so hidden swapchains don't crash AMD Mesa / RADV on Wayland/XWayland. - Links compiled AMD Mesa caches into Flatpak Heroic and Flatpak Lutris sandboxes.
- Games whose static archives aren't directly extractable (such as CryEngine / Kingdom Come: Deliverance II and custom DX12 engines) now compile directly from recorded gameplay pipelines in
- Smarter game client
.exedetection (#3):- Filters out launcher/updater/API wrapper executables (such as World of Tanks
wgc_api.exe, crash reporters, and installers) and prioritizes realwin64/Bin64game binaries.
- Filters out launcher/updater/API wrapper executables (such as World of Tanks
- Instant Proton version switch detection & headless prefix bootstrap:
- Watches Steam, Heroic, and Lutris Proton configuration changes live and marks affected games
Stale (Proton updated)within ~2 seconds. - Initializes fresh or newly switched Proton prefixes headlessly before warming so compilation works even before launching the game once.
- Watches Steam, Heroic, and Lutris Proton configuration changes live and marks affected games
- Launcher & library filter bar + auto-refresh on game exit:
- Filter installed games by All / Steam / Heroic / Lutris, toggle ⚡ Needs Compile, or press
/to instant-search by name, engine, launcher, or AppID (also available in CLI via./run-cli.sh list --source ... --needs-compile --search ...). - Closing a recorded game while Shaderless is open now automatically imports
shaderless.dband updates the card's Recorded Pipelines count right away, even when Auto-Compile on Exit is turned off.
- Filter installed games by All / Steam / Heroic / Lutris, toggle ⚡ Needs Compile, or press
- In-app 💜 Support modal & dark-theme UI polish:
- Added an optional 💜 Support
Install
tar -xzf Shaderless-v0.2.2-beta-linux-x64.tar.gz
cd Shaderless-v0.2.2-beta-linux-x64
./run-gui.sh # launch the app
./install-desktop.sh # optional: adds Shaderless to your app menu and desktopNeeds webkit2gtk-4.1. See the README for full instructions.
AMD users: please share your results via the AMD test report.