ublue-os / bazzite

Bazzite is a custom image built upon Fedora Atomic Desktops that brings the best of Linux gaming to all of your devices - including your favorite handheld.
https://bazzite.gg
Apache License 2.0
3.84k stars 230 forks source link

Scaling Mode & Scaling Filter Broken #1395

Closed Shaunathanz closed 2 months ago

Shaunathanz commented 2 months ago

Describe the bug

In Game mode, gamescope does not respond or read Steam scaling mode or scaling filter settings. Changing the settings has no effect. The scaling mode behavior also seems to be in line with stretch setting and filtering seems linear.

What did you expect to happen?

I would expect the per-game setting to be used, and that changing the settings would change the behavior.

Output of rpm-ostree status

State: idle
Deployments:
● ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:stable
                   Digest: sha256:38727f6960f2efbaf7621e1308bff8298865db89fef55be9b0bee76535a3a454
                  Version: 40.20240722.0 (2024-07-22T14:31:39Z)
                Initramfs: '"-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf"'

  ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:stable
                   Digest: sha256:38727f6960f2efbaf7621e1308bff8298865db89fef55be9b0bee76535a3a454
                  Version: 40.20240722.0 (2024-07-22T14:31:39Z)
                Initramfs: '"-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf"'

  ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:stable
                   Digest: sha256:571e1c2fb00822e12a88ea0dabb631074c88356ab5213a829a7c178f3d286bfe
                  Version: 40.20240517.0 (2024-05-17T17:09:39Z)
                Initramfs: '"-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf"'
                   Pinned: yes

  ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:stable
                   Digest: sha256:356352db7875fd4c0afc848d86d553b034bb273f14cc6cacfb2694266fd8c73c
                  Version: 40.20240508.0 (2024-05-08T22:07:02Z)
                Initramfs: '"-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf"'
                   Pinned: yes

  ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:stable
                   Digest: sha256:d35aeeb3e69019a1bb0ee0f45ecaad186a4e8c9f4446e7fd3ca3c1200db52022
                  Version: 40.20240507.0 (2024-05-08T06:29:42Z)
                Initramfs: '"-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf"'
                   Pinned: yes

  ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome:39-20240407
                   Digest: sha256:99f91518ceafb75094bd0e5483672af4d13baa2ed4ffc0b009f1a6ff28226dca
                  Version: 39.20240406.0 (2024-04-07T01:32:16Z)
                Initramfs: '"-I /etc/crypttab /etc/modprobe.d/amdgpu.conf /etc/modprobe.d/deck-blacklist.conf"'
                   Pinned: yes

Hardware

83E1

Extra information or context

Lenovo Legion Go

KyleGospo commented 2 months ago

Working here, but it does depend on the title. What are you experiencing this in? Some games will always use the full display resolution and do their own upscaling, which completely invalidates what Gamescope might want to do.

Shaunathanz commented 2 months ago

Hi Kyle!

I am seeing the issue in Monster Hunter Rise, Resident Evil 4 Remake, Sackboy A Big Adventure to name a few. Before I updated today I was running 40.20240517.0 and my games were scaling and filtering fine. I restarted my device and it actually seems to have helped RE4R but not the other games... not sure what to make of that. MHRise and Sackboy are still not working post restart. I tried an older proton version but that didn't have an effect.

I was thinking of maybe rolling back to confirm that the old bazzite actually works but even if that's true, what artifacts would be useful in narrowing down the cause of the problem?

ibanezbass commented 2 months ago

I’m also seeing this with all Sony games at least. Fullscreen exclusive mode causes the picture to take up 1/4 of the screen and refuses to scale.

LeonardoMeireles55 commented 2 months ago

It is necessary to force a resolution for the scaling filters to work. For example, 1600x900 with the integrated screen option activated.

Image 1 Image 2
ibanezbass commented 2 months ago

It is necessary to force a resolution for the scaling filters to work. For example, 1600x900 with the integrated screen option activated.

Image 1 Image 2

That doesn't do anything on the Legion Go anymore. Setting a resolution is just ignored and it defaults to full 2560x1600.

Shaunathanz commented 2 months ago

It is necessary to force a resolution for the scaling filters to work. For example, 1600x900 with the integrated screen option activated. Image 1 Image 2

I appreciate the images, but in my case for the affected games I was already using that setting. The fact that I'm getting stretch scaling as the default has got me confused though, that's not even the default behavior. I have yet to roll back to 40.20240517.0 because of life things but it would be interesting if another Legion Go user with current issues could see if that build fixes it for them as well to confirm it's some kind of regression.

ibanezbass commented 2 months ago

It is necessary to force a resolution for the scaling filters to work. For example, 1600x900 with the integrated screen option activated. Image 1 Image 2

I appreciate the images, but in my case for the affected games I was already using that setting. The fact that I'm getting stretch scaling as the default has got me confused though, that's not even the default behavior. I have yet to roll back to 40.20240517.0 because of life things but it would be interesting if another Legion Go user with current issues could see if that build fixes it for them as well to confirm it's some kind of regression.

I don’t think you need to go back that far. 0627 worked, I believe. It stopped working for me when I went to one of the newer builds.

Shaunathanz commented 2 months ago

It is necessary to force a resolution for the scaling filters to work. For example, 1600x900 with the integrated screen option activated. Image 1 Image 2

I appreciate the images, but in my case for the affected games I was already using that setting. The fact that I'm getting stretch scaling as the default has got me confused though, that's not even the default behavior. I have yet to roll back to 40.20240517.0 because of life things but it would be interesting if another Legion Go user with current issues could see if that build fixes it for them as well to confirm it's some kind of regression.

I don’t think you need to go back that far. 0627 worked, I believe. It stopped working for me when I went to one of the newer builds.

Good to know! 0517 was the build I was on before the recent update. I was going to check out 0627 but the cryptographic signature problem prevents that I guess. Already ran the script twice, once initially and then again to allow the fated recent update. Tried running the fix again to rebase but I guess it just doesn't work like that.

Shaunathanz commented 2 months ago

Looks like 40.20240725 fixed it (for me at least).

Will re-open if something that did work is still broken

ibanezbass commented 2 months ago

This doesn't seem to be fully fixed. Yes FSR is working again, but I still can't set resolutions in the game properties.

Shaunathanz commented 2 months ago

This doesn't seem to be fully fixed. Yes FSR is working again, but I still can't set resolutions in the game properties.

The only Sony game I have is Sackboy which I've had since it launched, and I've played it on both Steam Deck and the Legion Go. That particular game has never responded to the resolution settings in the Steam game options. Not sure if the other Sony games are different but Sackboy just does its own thing which Kyle mentioned above some games are just like that.

If you had games working before that don't work now then I would definitely create an issue assuming it's a Bazzite issue and not a game update issue where they somehow broke something with gamescope.

All I can say in my limited testing is that integer scaling is working for me in MHRise again which means the game resolution option, scaling, and filtering are working again.