I’m making an application that draws shapes and I use a camera to draw in other places. Basically, let’s say I have a 4×3 rectangle and would like to use glgetpixels to get all the pixels for something that is 1024×768, but my monitor might not support that resolution. How can I render something bigger than the monitor. I do this so I can let the user save a picture of the shapes at an arbitrary resolution. Would using glviewport extend beyond the frame then I can just do glgetpixels?
Thanks
You can RTT (render-to-texture) by defining a FBO (Frame Buffer Object) and attaching a texture to it. Check glBindFramebufferEXT().
And after drawing the scene you are able to execute glGetTexImage() and retrieve the pixels for it.
RTT is a very well established and documented technique.