r/OptimizedGaming • • 5d ago

Graphic & FPS Mods | Optimization Guide [Linux / Proton] Shaderless Open-source port of SCSKiller that pre-compiles DX12/UE5 shaders into your driver cache before launching the game

Post image

Hey guys,

Over the past few days when I saw the SCSKiller repo I got really excited, but then I realized it's only for Windows so I decided to port it to Linux myself, and today I finally finished it (still need AMD testers though!).

Basically, this tool (Shaderless) does what the original SCSKiller does on Windows reading the game's DX12 shaders directly from the game files and compiling them before you play so you don't get shader stutter but the process on Linux was much harder to pull off because we have the Proton / vkd3d-proton
layer in the middle, with shaders and caches split across multiple places, plus full pipeline states needed by Vulkan.

So I also ported the Record mode to work under Proton: you can turn on Record, play for 5–10 minutes so it learns the exact pipeline states your game uses, close the game, and hit Re-Compile.

I tested it on CachyOS with an RTX 3070 on an Unreal Engine 5 game (Valor Mortis), and in-game shader compiles dropped from ~49% down to 6%, and loading compile time went from 170s down to 56s.

It works with Steam, Heroic, and Lutris games. Right now I've only tested it on NVIDIA since that's what I have, so if anyone on AMD (Mesa / RADV) can try it out and let me know if it works for you, that would help a ton!

If you have an AMD GPU and a DX12 game (especially an Unreal Engine 5 game), I would love your help testing it! There is an AMD Test Report issue template(https://github.com/cyberps96/Shaderless/issues/new?template=amd-test-report.yml) on the repo where you can share whether it worked and where Mesa
 wrote the cache.

GitHub Repo: https://github.com/cyberps96/Shaderless

53 Upvotes

10 comments sorted by

•

u/AutoModerator 5d ago

New here? Check out our Information & FAQ post for answers to common questions about the subreddit.

Want more ways to engage? We're also on Discord

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

18

u/HeisenbergVR 5d ago

Hi! Official support for linux on SCSKiller is in process! Current Beta version has experimental support. I will be releasing 1.3.0 stable this weekend with it!

5

u/edwardneckbeard69 5d ago

i think OP can contribute directly to this then!

2

u/HeisenbergVR 5d ago

Sure! I can check if he opens a pr if something helps!

5

u/Ok-Rooster-8552 5d ago

Hi!
i already did a pull request on your repo <3

3

u/Puzzleheaded_Key768 5d ago

Doesn't even load properly. I'm on cachyos and Rx 9070. Very Buggy.

2

u/Ok-Rooster-8552 5d ago

hi,the AMD Test still in progress so thanks for the feedback
this issues has been fixed please re download the latest release <3 which is v0.1.0-beta

1

u/Puzzleheaded_Key768 4d ago

Hi it's not detecting any games at all

1

u/Ok-Rooster-8552 4d ago

HI!
Thanks for testing! How is Steam installed: from your package manager, or as Flatpak? Could you run these in the Shaderless folder and paste the output?
./run-cli.sh list
ls -d ~/.local/share/Steam ~/.steam/steam ~/.var/app/com.valvesoftware.Steam ~/.config/heroic ~/.var/app/com.heroicgameslauncher.hgl ~/.local/share/lutris ~/.var/app/net.lutris.Lutris 2>&1

1

u/Puzzleheaded_Key768 3d ago

I'm using heroic games launcher and everything is native cachyos, soon as I get home I'll do that.