Steam Deck

Steam Deck

Help with ReShade in Gamescope after SteamOS 3.5.5 update
Hi all,

since SteamOS now supports ReShade in Gamescope, I have to ask if someone already could manage implementing own ReShade FX files into Gamescope.

My scenario: I want to get a CRT shader (usually just GTU.fx, because I love the smooth look) for pixel art games. Either on a per-game basis via start commands in Steam or system-wide.

Looking at the Gamescope github, this should work with --reshade-effect [path] and --reshade-technique-idx [idx].

In my scenario, the run command for an individual game in Steam would be

gamescope --reshade-effect GTU.fx --reshade-technique-idx GTUV50 -- %command%

However, with this the games just crash on startup.

A few things:
gamescope --help gives the hint that shaders should either be in /usr/share/gamescope/reshade/Shaders or ~/.local/share/gamescope/reshade/Shaders.
My GTU.fx shader is in the second path.

Also, it is not clear to me what the --reshade-technique-idx [idx] really is. I know from the ReShade ini config files, you usually write GTUV50@GTU.fx for techniques, but I don't have any clue how it should be done here.

I already saw some people with system-wide CRT shaders (achieved with gamescope) and I would be very thankful if someone can post some insights here. Thank you in advance!
< >
Showing 1-8 of 8 comments
try your command from the desktop mode. game mode is already using gamescope, so running gamescope again might break things.
Crashes as well, already tried the commands in desktop mode.
I would like to know how to do this for gamescope globally as well. My use-case would be I'd like to use LUT.fx to get a more accurate color profile applied to all games. As it is right now, I tediously have to do this manually for every game and it's awful. I also will be giving my old steam deck to my SO once my oled comes in and I'd like to calibrate that and have it look the best it can by default before I give it to them.
Originally posted by Dee:
I would like to know how to do this for gamescope globally as well. My use-case would be I'd like to use LUT.fx to get a more accurate color profile applied to all games. As it is right now, I tediously have to do this manually for every game and it's awful. I also will be giving my old steam deck to my SO once my oled comes in and I'd like to calibrate that and have it look the best it can by default before I give it to them.
funnily enough, on gamescope git page they strongly discourage using this feature for LUTs since there are ways to do it with less latency.
Originally posted by Škoda 14Tr:
funnily enough, on gamescope git page they strongly discourage using this feature for LUTs since there are ways to do it with less latency.
Yeah, totally see that, but it seems like that's written for devs with the know how to directly access certain things in other ways, not for an end-user just trying to get reshade shaders to work. And regardless, even before this, people were only doing this with reshade before as well. Like I have never seen a tutorial, video, or thread on how to do any of this on the steam deck otherwise. At least when it comes to gaming mode.
I tried to use reshade shaders on my Linux machine (not Steam Deck), but had no luck. Though I found out two things:
1. If you'll add %command% >> ~/output_file 2>> ~/errors_file into command line options, game will spit its CLI output into those two files that will be placed into your home folder
2. By examining this output, I realized that all .fx files also need to be allowed to be executable as programs in order to work, you can change file's permission by opening its directory in Dolphin and opening file's properties in it, there you need to open the "permissions" tab and tick "Allow executing file as program"
While allowing shaders to be executable made gamescope interact with them, all shaders that I tried so far resulted in numerous syntax errors reported by gamescope, it seems like it doesn't understand the language the same way reshade does
You need to try shaders that work with vkBasalt and your hardware. GTUV50 doesn't seem to be compatible with vkbasalt.
Shaders like CRTPi, CRT_FakeLottes and CRT_Lottes do work.
Try these https://github.com/gripped/vkBasalt-working-reshade-shaders
Also gamescope doesn't support depthbuffer effects.
From a git comment: "Think of Gamescope like a layer of glass and you are painting on that glass.
It does not have any access to the game's rendering buffers."
< >
Showing 1-8 of 8 comments
Per page: 1530 50

Date Posted: Nov 19, 2023 @ 8:46am
Posts: 8