Opened 22 months ago
Closed 17 months ago
#14102 closed defect (wontfix)
GRAPHICS: Scummvm Window not scaled
Reported by: | legluondunet | Owned by: | lephilousophe |
---|---|---|---|
Priority: | normal | Component: | Graphics |
Version: | Keywords: | ||
Cc: | Game: |
Description (last modified by )
Hello, it's a global graphic bug, scummVM in window mode sometimes does not fit his full window, the game or the gui use only 1/6 of his window.
Better htan words, I joined you screenshots.
Attachments (6)
Change History (24)
by , 22 months ago
Attachment: | Capture d’écran_2023-02-04_14-05-31.png added |
---|
by , 22 months ago
Attachment: | Capture d’écran_2023-02-04_10-11-09.png added |
---|
by , 22 months ago
Attachment: | Capture d’écran_2023-02-04_09-58-54.png added |
---|
comment:1 by , 22 months ago
comment:3 by , 22 months ago
Description: | modified (diff) |
---|---|
Summary: | Opengl bug → Scummvm WIndow not scaled |
comment:4 by , 22 months ago
Description: | modified (diff) |
---|
comment:5 by , 22 months ago
Component: | --Unset-- → Graphics |
---|---|
Summary: | Scummvm WIndow not scaled → GRAPHICS: Scummvm Window not scaled |
comment:6 by , 22 months ago
This looks like a duplicate to #14105.
It's the same setup, this bug is intermittent and both bugs seem to relate to an invalid rect.
I propose to merge this bug in the other as a crash is more critical.
comment:7 by , 22 months ago
FYI I already reported a very similar bug many years ago:
https://bugs.scummvm.org/ticket/10048
comment:8 by , 22 months ago
Finally, I am not sure the bugs are the same.
Could you provide a log from scummvm -d6
when this bug happens?
comment:9 by , 22 months ago
I joined you a new log, I can reproduce this bug all the time. When it happened, I press alt+enter then scummvm displaying his interface in full window again.
by , 22 months ago
Attachment: | scummvm_sdl_surface.log added |
---|
comment:10 by , 21 months ago
Hello, I reported 3 display issues with ScummVM, this one is the latest opened and it is still active.
I compiled ScummVM from git today and I can still reproduce this issue.
I joined yo screenshot and a new log.
by , 21 months ago
Attachment: | log bug 14102 17 february 2023.log added |
---|
by , 21 months ago
Attachment: | Capture d’écran_2023-02-17_15-47-18.png added |
---|
comment:11 by , 21 months ago
Hello, do you have a desktop recording program that could record a quick video to show exactly how this happens for you?
You can upload the video to Youtube then and write the link here.
comment:12 by , 21 months ago
as you asked:
https://youtu.be/O9KMZnFAIGE
Until now, I can reproduce this bug only in sdl_surface mode.
As you can see, the game or scummvm interface does not fully fill scummvm window.
my workaround: alt+enter to enter fullscreen.
comment:13 by , 21 months ago
Interesting, testing on Windows 10 with ScummVM 2.8git and SurfaceSDL also has somewhat similar behavior although not as "glitchy".
The launcher window gets resized upon loading the game and also again when returning to launcher but it does not maintain the dimensions of the original launcher window. This is especially obvious if the launcher windows "maximized", but not fullscreen. And the same goes for the game window.
Windows behaves as if the ScummVM window is "maximized" though, since it offers the "restore down" icon on top right and not the "maximize icon". Clicking on "restore down" sort of centers the window but maintains dimensions. Clicking on "maximize" from this state, resize the window to maximum dimensions within the screen and fills it as expected.
Still no black areas though. Your Linux SDL seems to behave differently in that regard. I'll have to test on mine.
For now I'm thinking this is sort of known SDL graphics issue, that is especially "buggy" on Linux.
comment:14 by , 21 months ago
I have tested on Ubuntu 20.04 and 22.04 and I can reproduce this, pretty much as shown in the video (thanks for uploading that by the way!).
Steps:
- Launch ScummVM in windowed mode. (tested with ScummVM 2.8git, built from master HEAD)
- From Global Options set Graphics Mode to Surface SDL, if it's not set already.
- Maximize the window (but do not enter full screen) -- use the "square" window button.
- Launch a game like Gabriel Knight 1 or Hyperspace Delivery Boy.
- The game will appear in a small area on the bottom left of the window, while the rest of the window will be black.
It looks like some SDL resizing bug. Google returns quite a few results, but as I am not familiar with this part of our code, I cannot tell which one, if any, would be helpful for our issue.
The quick workarounds for the bug are:
- Switch to fullscreen mode.
or
- "Restore" the window that has the issue with the black area, by clicking on the "double overlapping squares" button, and then "maximize" it, by clicking on the "square" button. Edit: The buttons for "restore" and "maximize" might differ depending on the X Server GUI; in the video they appear to be a single "square" at all times.
comment:15 by , 21 months ago
This is indeed a bug in SDL.
I just created a PR for a fix: https://github.com/libsdl-org/SDL/pull/7341
While looking at the bug I failed to find a simple workaround we could do in our code.
I can only advise to use OpenGL backend under X11 as it doesn't exhibit the bug (because it handles better maximized state).
comment:16 by , 21 months ago
The patch has landed in SDL and will be part of next SDL2 (and 3) releases.
comment:18 by , 17 months ago
Owner: | set to |
---|---|
Resolution: | → wontfix |
Status: | new → closed |
Fixed in SDL tree instead.
My config:
OS: Manjaro 22.0.2 Sikaris
Kernel: x86_64 Linux 6.1.9-1-MANJARO
CPU: AMD Ryzen 9 5900HX with Radeon Graphics @ 16x 3.3GHz
GPU: AMD Radeon RX 6600M (navi23, LLVM 15.0.7, DRM 3.49, 6.1.9-1-MANJARO)
Video drivers: Mesa 22.3.4