Screen goes black for 1 to 2 seconds while switching between a game and the desktop

fullscreengaminggraphics card

When I set GTA V to run in fullscreen, and if I switch between the game and the desktop, the screen goes black for around 2 seconds, then it recovers. BUT GTA V doesn't freeze if I press W while the screen is black, as I notice that the car in the game starts moving.

If GTA V was in windowed mode and if I switch between the desktop and the game, the screen would not go to a black screen. If press Alt + Enter (to make it fullscreen), it would go to a black screen. I don't know what is the problem.

I have updated graphic drivers.

My system specs:

  • Nvidia GTX 970
  • Intel i7 4790k

Best Answer

This is by design and probably has something to do with multithreading and the fact that all the graphics data will have been purged when you switched to the desktop.

When you switch back into the game the main game thread starts instantly, reading keys, playing sounds, making your car move.

The graphics thread on the other hand has a lot of work to do. It has to set up the entire graphics pipeline from scratch. Textures have to be loaded, shader programs have to be compiled and started on the GPU, and the various shader stages have to be pipelined together. This bring up will take some time, the largest time is probably loading in the textures.

On a single threaded program all of this setup would have to be done before the program accepts any keypresses and would delay your time to get moving, but in a multi threaded program these two things can happen at the same time. Obviously if one thread is ready before the other though you will get this "odd" sort of behaviour.

The differences between full screen and windowed modes is that in fullscreen mode the application assumes it has full control when in focus and when not in focus you do not want it to "hog" resources. Windowed modes are generally for when you want to switch between the game and Windows quickly and not unload the graphics data. Windowed modes are usually slightly slower than full screen, but have no delay when alt-tab is used to escape the program.

Related Question