RetroArch icon indicating copy to clipboard operation
RetroArch copied to clipboard

GL drivers - Black screen on Windows when switching to full screen

Open PoloniumRain opened this issue 1 year ago • 5 comments

This issue is similar to #14474 but it's different enough that i thought i'd open a separate issue. But feel free to close this if you think it's the same thing...

Switching between full screen and windowed mode (by pressing the F key for example) will make the entire screen go black for roughly 2 seconds. There's no window bars or mouse cursor, nothing at all, just 100% black screen. This happens on Windows 10 with both the 1.11.1 and 1.11.0 stable releases, and the latest nightly build.

Apart from this happening on Windows 10 instead of MacOS Ventura, the other differences to #14474 are:

  1. It's not a permanent black screen, it only lasts 2-ish seconds.
  2. It only effects switching between full screen, so opening up RA in a minimised window doesn't show a black screen.
  3. Switching between full screen and a minimised window will actually work ok, apart from the temporary black screen.
  4. RetroArch will correctly re-launch in full screen if it was previously set to full screen.
  5. The black screen also appears for 2 seconds when either running or closing a game while in full screen (using any core).

It's the GL, GLcore and GL1 video drivers that are causing this issue. All of the other non-GL based drivers work totally fine, and it doesn't happen with 1.10.3.

I'm using the latest 517.48 Nvidia drivers btw.

PoloniumRain avatar Oct 05 '22 14:10 PoloniumRain

Unable to reproduce with any kind of fullscreen toggling, exclusive or windowed.

Nvidia version 512.15.

sonninnos avatar Oct 05 '22 15:10 sonninnos

I was thinking about the auto refresh rate switch setting maybe (black screen happens while the monitor changes its refresh rate), but wouldn't that affect all drivers? 🤔

Still worth a shot, try turning it OFF: Settings > Video > Output > Switch Refresh Rate Automatically, just to make sure we're not talking about the same thing.

bslenul avatar Oct 05 '22 16:10 bslenul

Still worth a shot, try turning it OFF: Settings > Video > Output > Switch Refresh Rate Automatically

Made no difference :/

I also just tested this on a Windows 10 laptop with Intel integrated graphics, and it doesn't show a black screen, but instead it will freeze the entire screen for roughly 5 seconds, then switch to full screen. It does the same when i go back to windowed. And again it only happens with any of the GL drivers. D3D11, Vulkan and anything else will switch instantly.

But on my desktop PC with my Nvidia GPU it's the same type of behaviour as when a Windows game goes into exclusive full screen (not borderless full screen) which causes most monitors/TV's to not display anything for a few seconds. If i record it with Nvidia Shadowplay the black screen wont show up in the video, which is also what happens when recording a game switching to exclusive full screen. The video wont show it because it's the actual monitor/TV that is doing it, like when you change the desktop resolution.

Both 1.11.1 and 1.11.0 are clean installs, so they're not set to use exclusive full screen. All setting are default.

PoloniumRain avatar Oct 05 '22 16:10 PoloniumRain

This might not even be a real RetroArch issue, and just a context switch with the GPU driver (nvidia) where GL initialization takes longer to setup than say D3D11/12 or whatnot.

LibretroAdmin avatar Oct 05 '22 17:10 LibretroAdmin

Well it happens with Intel integrated graphics as well (but freezes instead of a black screen) and all RA versions before 1.11.0 never had this issue with GL. 1.10.3 works fine for example. Doesn't anyone else have this? Seems like it must at least be quite common if both Nvidia and Intel have issues. I even downloaded RA 1.11.1 and 1.11.0 again, on another computer, just to make sure the downloads weren't corrupted or something.

The CPU's are also different in both systems, one has AMD and the other is Intel. And one has a 60Hz screen and the other is 120Hz with G-Sync (which i also tried disabling and it made no difference).

PoloniumRain avatar Oct 05 '22 17:10 PoloniumRain