New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Prominent graphical corruption in macOS full screen mode #771
Comments
Very interesting problem, especially due to the restriction on recording. Will try to reproduce, somehow. At a glance and based on experience, I can see no way for whatever texture we give SDL to get corrupted like that on our side, which just leaves SDL itself and whatever OS libraries come after. SDL being SDL points to the former, the screen recording thing points to the latter. It would be nice to cook up a minimal repro with SDL. |
I should mention that I am running beta OS software (macOS Big Sur beta). However, I distinctly remember this issue starting to occur after downloading a snapshot. Have the SDL libraries been updated around snapshot 207? Actually, I believe the snapshot which started this issue was the first one which changed the build system from Starcatcher to GH Actions. Which snapshot was that? |
We migrated to ghactions between snapshots 205 and 207 (the tag |
This is particularly unusual because we handle the framebuffer and the drawing of in-game dialogues and overlays. At first glance, it doesn't seem possible that opening a dialogue could behave differently with screen recording or fullscreen. Edit: After a second look, there could be an issue with The-Powder-Toy/src/gui/interface/Engine.cpp Line 111 in 1681ca7
The-Powder-Toy/src/gui/interface/Engine.cpp Line 222 in 1681ca7
The-Powder-Toy/src/gui/interface/Engine.cpp Lines 179 to 183 in 1681ca7
@josephazrak Do you see the same graphical glitches when you open a fullscreen window (such as the save browser)? |
@simtr It sounds like we're heading in the right direction. I've gone ahead and tested the bug for these windows: name, on window open / on window close
Up to now, it looks like fullscreen interface windows are immune to the glitch and all non-fullscreen windows display it. However, this is not true for some very specific non-fullscreen windows:
|
@josephazrak Can you still reproduce this with recent stable versions or snapshots? |
Prominent graphical artifacts were introduced around snapshot 207.
Prerequisites:
1. The window resize option is enabled;
2. Powder Toy is running in native full screen mode (through the green Fullscreen button);
3. The screen is not being recorded.
When these prerequisites are met and the user triggers some kind of change in the Powder Toy GUI (for example, opening the Save Browser, Element Search list, movement of a progress bar, login window), flickering occurs for around 100-500ms.
Here is a video of this occurring when opening the Element Search list is toggled (recorded w/ external device because of #3): https://user-images.githubusercontent.com/17184955/115196442-9362ee80-a0f8-11eb-8bc4-88af8944b32e.mp4
Here is a screenshot of the graphical artifacts:
System info
Operating system: macOS Big Sur version 11.3 Beta (20E5231a)
Hardware: MacBook Pro 13' (2019), 2.4 GHz Quad-Core Intel Core i5, 8 GB 2133 MHz LPDDR3, Intel Iris Plus Graphics 655 1536 MB
The text was updated successfully, but these errors were encountered: