[Feature Request] gamescope support
SilverKeeper opened this issue · 3 comments
gamescope is frequently used for games run with Wine to force window behaviours, resolution upscaling, etc. But it also supports native applications, Reshade and by extension vkBasalt due to it using Vulkan.
I've found it useful for SDL (which won't recognize vkBasalt no matter what) games with retro graphics to make use of CRT filters; vkBasalt's environtment variables can already be passed with the feature from #117 .
gamescope is a command that needs to be placed before the app it'll run on, however. A typical command goes like this (eg. Woof!):
ENABLE_VKBASALT=1 VKBASALT_CONFIG_FILE=file.conf gamescope -f --force-grab-cursor -- woof -iwad "DOOM2.wad"
Currently we can't place anything before the engine command. I'm not sure how feasible it is to implement this since I've seen you mention DoomRunner has too keep its simplicity, but it may also be useful for Steam Deck users.
If you don't mind a little weirdness, you can always just launch DoomRunner itself with Gamescope and the child processes/engines will also run in it: gamescope -w 2560 -h 1440 -f -- doomrunner
You'd want to edit the .desktop file/Steam entry/however you're launching DoomRunner to prefix gamescope
on it.
If you don't mind a little weirdness, you can always just launch DoomRunner itself with Gamescope and the child processes/engines will also run in it:
gamescope -w 2560 -h 1440 -f -- doomrunner
You'd want to edit the .desktop file/Steam entry/however you're launching DoomRunner to prefix
gamescope
on it.
Yeah, it's either this or putting the whole prefix as a command line argument to the mods list and copying that and the final launch command manually.
Both are less than ideal; launching DoomRunner in gamescope needs me to pass the environment variables I need, anyway, making the Environment tab pointless.
I just figured out how to use Zink, the OpenGL>Vulkan translation layer. In case someone had the same problem as me, see this post by the dev: https://www.supergoodcode.com/preemptive/
Usage is as simple as setting MESA_LOADER_DRIVER_OVERRIDE=zink for the required sourceport (eg. making it a environment variable for the current "Woof!" preset). For NVIDIA users: https://wiki.archlinux.org/title/OpenGL#OpenGL_over_Vulkan_(Zink)
I know SDL_RENDER_DRIVER
exists to change the renderer but the output will be always OpenGL cause it's SDL, I guess.
Sorry for the undue request. Someone with an actual Steam Deck would present better reasons to ask for this.