I’m trying to see if I can do a cuda or opengl screen capture. Under linux I found a solution of getting an opengl context of the root window. Under windows xp apparently there should be a solution of using bitblt or creating an invisible full screen opengl window. There doesn’t seem any solution under windows vista that can capture the entire screen and content of opengl windows.
I need a full screen capture that includes what is drawn in all windows, the mouse cursor, menus etc. inluding opengl/directx windows and that would hopefully be scalable to vista.
I was hoping that there might be an undocumented solution based on how video cards worked 15 years back or so and some knowledge of hardware, but it will probably take nvidia people to answer this if anyone is listening.
I’m guessing that the video memory is not virtual (i.e no mmu on the card). If so, is the card’s video output ever drawn directly in video memory for rendering? If so, is that memory accessible as a global memory pointer and is it possible to find it? (i.e, is it constant or is it possible to query where it is?)