ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.67k stars 1.07k forks source link

Gnome Scaling breaking Steam (Proton) Games on Ubuntu #4904

Open Rhiyo opened 3 years ago

Rhiyo commented 3 years ago

I've just installed the latest version of Pop OS and I'm trying to play games on steam. I use 1.5 fractional scaling as I have a decently sized 4k screen. However, all proton games (haven't tried not proton) on steam overflow the screen now. This does not happen if I switch back to 100% scaling. This wasn't happening while I was using Manjaro KDE just the other day on the same PC. Could it possible be something to do with x-wayland?

Using latest Proton-GE (but tried with Proton Experimental and got same results)

Tried with and without WINE_FULLSCREEN_INTEGER_SCALING=1, as I usually run games at 1080p.

I have an RX580

Using Kernel 5.12

Latest kisak-mesa ppa

The two games I tried were Solasta and The Legend of Tianding. I just noticed these are both Unity games so I will have to try non-unity. However, these same games ran fine on this same computer usinng Manjaro. Anyone have any ideas? Maybe there is at least a way to turn fractional scaling off for just steam and/or individual games to get around the issue. Using GDK_SCALE=1 for launching steam or the games launch option doesn't work.

I think to achieve fractional scaling Gnome will scale up then back down, I assume the games are being scaled up but not back down.

iSaluki commented 3 years ago

I have noticed a very similar issue with running Metro Exodus (Native Linux build). It may not be a Proton issue? Potentially an issue with Steam or Gnome?

Rhiyo commented 3 years ago

Did some testing. SWKOTORII (Native, Non-unity) works fine. Age of Decadence (Non-Native Proton, Non-unity) has scaling issues.
Muck (Native, Unity) works fine. Muck (Non-Native proton, Unity) has scaling issues. Tabletop Simulator (Native, Unity) works fine.

So I at least don't think Unity is the issue, I feel like I've narrowed it down to a Wine/Proton issue, most likely in combination with Ubuntu scaling.

Rhiyo commented 3 years ago

For now I get around the issue using gamescope. I tried Wayland too, but that limited my resolution choose to 1440p, while also giving me issues in other programs.

Edit: Tried AMD's FSR using the latest Proton-GE (6.13-GE-1) and it doesn't fix anything (Tried with Muck and Solasta)

Now I am using gamescope alongside Proton-GE for FSR to fix this problem while getting the benefit of FSR.

RobotRoss commented 3 years ago

I'm also encountering issues with Proton when using fractional scaling. Namely, Proton doesn't pass any monitor scaling information, instead, it just limits the max resolution the game runs at (which just makes the entire game look awful) My monitor is a 3840x2160 panel, which I normally run at 1.25x scaling. Proton, instead of allowing games to max out to this resolution, will limit them to an arbitrary value considerably lower than the native resolution (which also crashes some games, as it's not any standard panel size).

howdev commented 2 years ago

Most of the native games work under Gnome scaling, except for a few Victor Vran, Metro Exodus. None of the Proton games display properly, all overflow outside the monitor.

SeleDreams commented 2 years ago

same problem, i notice that some games such as clannad will tend to switch back and forth between right resolution and incorrect resolution

looking at the resolution list offered by the game, it seems like the game ends up identifying my computer resolution as way higher than it is when scaling is enabled, i don't know if there's an argument for proton to ignore the screen scaling and give the correct resolutions

carmiac commented 1 year ago

Same problem here, tried it with System Shock. This also breaks terribly if I have my second monitor (4k, portrait) turned on.

inverse commented 1 year ago

only workaround i found is to scale the display to 100% and launch steam. is there any way to launch games with some custom arguments to do this?