-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
Make the pause screen "transparent" #16404
Conversation
When paused (ESC or back), you now see the paused game below, darkened, instead of the usual menu background. Not enabled in VR mode for now because it could get weird. Also not trivial in skip-buffered mode (would require taking a screenshot) so disabled in that case too.
Just a note about this approach: it won't allow to have the game scene as a background of different screen (or even better of a sub region of the screen). Not a big deal per se, but might be worth considering a common way to do this and #16228. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On resize, won't we throw away framebuffers? Maybe we need to avoid that sometimes so people can change resolution and things? Hmm.
-[Unknown]
Yeah, good points @iota97 . But this way does have the advantage that we re-run the post processing chain every frame, which means that we can add a mode to interactively tweak and instantly preview post processing, which will make it a lot more fun to work on post shaders, I think. As for #16228, we might be able to do something similar with some parameter to As for framebuffers getting deleted on some kinds of resize, yeah, might have to do something about that... Will do some testing of important cases. |
The throwing away of framebuffers isn't that bad, if you change render resolution, what happens is that we do indeed throw away the framebuffers so we'll render black or whatever data is behind in VRAM as an image.. Well, not great but no disaster. We could of course force the emulation of a single frame when returning from settings to solve this... Might cause an audio glitch though unless we work around that, too, and might annoy the user slightly that they'll be resuming from one frame later. Not sure what's best here but probably not this. Actually best is probably to just delay the dropping of framebuffers until resume. I'll look into that. We'll still have issues I guess with task switching on Android, hm.. |
I'm just gonna get this in as-is, and do followups, as it's not too bad already. |
When paused (ESC or back), you now see the paused game below, darkened, instead of the usual menu background.
Not enabled in VR mode for now because it could get weird. Also not trivial in skip-buffered mode (would require taking a screenshot) so disabled in that case too.
Part of #13016
EDIT: Hm, there's a weird issue where resizing the window during the pause screen doesn't work properly in this mode...