Game Window Rendering

MiRai

Member
Dec 3, 2010
159
1
91
First of all, I'm not entirely sure whether this is a hardware or software question and if it is in the
incorrect forum... I apologize and please feel free to move this thread.

With that being said, I'm currently in a debate with someone over how game windows are
rendered; particularly game windows that are lying on top of each other. I'm going to use World
of Warcraft as an example because it was what we were debating over and I'm not sure if it varies
from game to game.

The issue at hand is... if 2 or more WoW game windows are stacked on top of each other in
Windowed Mode (not minimized), do the underlying game windows continue to render and use
VRAM and GPU as they would if they could actually be seen by the user?

My answer was 'yes, they do continue to render and use the resources they normally would even
though they can't be seen' and I tried to prove it to him through numerous GPU-Z screen shots with
different WoW window setups. His reply was 'no, if you can't physically see the game window
because it's behind another window it does not render.'

Since I can't slap people across the internet just yet, I've turned to you folks for assistance to
either help prove or disprove what I believe. I don't have any technical documentation or terms on
this matter but it only seems logical that when I load up 5 game windows, regardless of whether I
can actually see all 5 of them or not (not minimized), they are going to render and use resources
as they normally would.

Any and all assistance is greatly appreciated.
 

Borealis7

Platinum Member
Oct 19, 2006
2,901
205
106
I think they do render the same, but they are invisible to each-other. one doesn't know about the existence of the other, but they both exist in the same physical memory (RAM and VRAM). the 2 separate processes continue to work independently.
 

nenforcer

Golden Member
Aug 26, 2008
1,780
21
81
Yeah this is where the design of the OS and display driver really come into play.

I believe that not only does the OS obviously know which windows are visible or not but each window can determine whether or not it is visible. If a window knows its not visible it will still continue to run (especially a networked app like WoW) and consume resources but generally will not make any actual new draw calls unless it is visible.

In this state it may or may not temporarily free any graphic resources related to rendering but this may be OS / API specific.

For instance, the Mac OS X WoW client which uses OpenGL may behave differently than the Windows DirectX client using the same video card hardware. This may also be a result of how the different hardware vendors (ATI / nVidia ) have implemented their drivers relative to the spec provided for each API by Khronos (OpenGL) or Microsoft (DirectX) or it could just be how the operating system provides the resources. (MacOS X vs. Windows 7)

Its pretty magical how quickly an inactive windows can become active by just alt tabbing or clicking on it.
 

notty22

Diamond Member
Jan 1, 2010
3,375
0
0
Its all amazingly efficient, I think the answer is, its a combination of scenarios presented. Overlapping parts don't need resources. Minimizing while running seems to lower the memory usage.
What you see in the individual furmarks, is the total memory as also read in gpu-z , its not the memory in just that window. Each window added about 60meg usage.
What happens when you do this with 2 monitors at once ? I'm guessing, if they are not minimized, they add on memory usage. If they are taken off the screen, while the game is still running, probably lowers total memory usage slightly.
If you leave on screen, not minimized, but behind a full screen web browser window, I believe the memory usage stays high/active.
The driver knows if its minimized or not, with the game constantly running.
multiwindowedmemoryusage.png