[Solved-ish] Having issues launching games specifically from steam
Hi all!
I've recently come across an issue with launching games from steam. For now I've seen it happen on two games (or rather demos): Crow Country and Sophonce. They launch fine but have some flickering black blocks on the screen that make them unplayable. Here are some images:
This only happens when they go full-screen and on wayland, on X11 works fine. I've tried many versions of proton including eggroll variants.
The games work fine when launched with wine without steam in the middle if i do wine <game.exe> . If i do it this way the games detect that I'm running on an ultra-wide screen and play as such but through steam they stay on 16:9 instead.
I think you are correct assuming it's an issue with proton not supporting wayland as if i try to use lutris proton still doesn't work but wine does and so does with gamescope.
I'm trying to use gamescope now as you and the other comment have mentioned but I'm having the issue with this command, if you could help me:
It creates a window of the appropriate size but the game is still in 16:9 (Without the black blocks issue, which is already a win, but i'd prefer it to be ultrawide too).
Thanks for the help!!
EDIT: Just tried it with Lutris but it seems to also not work even with their setup on proton. So it might be a them thing. For now I'll just use lutris to play on wine directly.
The -W and -H are the resolution you want to display at, so you want those to be your monitor's native resolution. They default to 1280 x 720 if you don't specify.
The -w and -h specify what resolution to render at, and are only really useful if using DLSS or FSR for scaling. Skip them if you're not using that.
For some reason I've been having issues too, but I started adding this to my launch options in the game properties in Steam and it seems to work for several games. Dunno if this is the same issue as you though, but maybe worth a shot:
This may be an issue with your graphics drivers more so then wine, have you installed Mesa? Or are you using AMD's drivers?
You can check with this command vulkaninfo --summary although glxinfo -B may fetch more information try the latter and tell me how it goes if you want.
Alternatively Steam might not recognize your resolution by default and just force your games to run in 1920x1080, which ends up messing with the display manager so much it just gives up, (I am not certain how to fix that as I don't use an ultra wide monitor, perhaps editing something in the steam configuration but ... Eh) there is a solution if all else fails and that's just using gamescope!sudo dnf -y install gamescope to install.
You can read up on it if you want but the gist of it is, it's a window manager specifically made to run games inside your usual window manager (so no need to switch between Wayland or X11) its controlled via the steam launch options with certain arguments, or more easily accessible options via Lutris.
gamescope --help for all options or refer to the link to the (gamescope!) Github to figure out how to configure it for your needs.
TLDR: As I see it the "easiest" solution is to bypass the problem entirely and use gamescope the option provided by Valve.
I'm running with the mesa drivers on version Mesa 24.2.0-devel. After some tinkering around it seems its a combination of things and gamescope fixes the black blocks but it still won't render in ultrawide, so I'll just stick with wine and lutris for now which seems to work fine.
Only on certain screens or only on HDMI (I never reproduced that when using DP)
The game is running in non-native resolution, meaning the compositor is doing upscaling
The game window is full screen and focused - the black blocks go away if you show some desktop menu or focus other window on top - so basically looks like only happens when the direct scanout protocol is doing its thing
not only in Steam games, in most games in general
The problem has long been reported in Mesa project, but nothing was done to help. My bet is that the bug sits in amdgpu kernel driver and not user space.
EDIT: maybe it’s worth to report in kernel bugzilla or wherever amdgpu kernel driver bugs would go. I don’t reproduce this on my end anymore, because I changed my screen and it uses DP
EDIT2: I could only reproduce it on RDNA2 and yours is RDNA3. I had Polaris (RX 570) for quite some time and it was running on Wayland. Maybe it only happens on newer cards, maybe it’s regression added along the way
Bingo, yes this is the same issue for what they say. I am connected through DisplayPort though on all my screens. Shame that it is not being worked on but from my testing I assume that when steam moves proton to support wayland natively it will be fixed. Thanks for the info, very interesting!!
The HDMI/DP was my wild guess. For now the problem should also go away if you just change in-game resolution for whatever is your screen.
Maybe the problem isn’t being addressed because it was reported to Mesa user-space driver, but maybe the problem is in kernel module. It’s also not 100% always reproducible.