Appears that using a PBO and a hidden window context causes strange remnant graphics to appear on the captured output from OpenGL. By strange I mean snow, and lots of random squares -- nothing close to the intended OpenGL scene.
If the window is left visible, it renders properly into the buffer, unless something overlaps part of the window (and then the overlapped region doesn't update in the buffer).
Works fine on a variety of Nvidia products, and tested against Radeon HD 6770 and 2600 XT with no issues. Can't crack the nut on this one.
Posted on the FirePro forum several months ago, and no response yet.
Any suggestions? A better way to do this (experience - and not speculation)?
Thanks in advance
Just to be clear, are you rendering to a window and then calling glReadPixels to read the content into a PBO? If so, that will produce undefined behavior. Rather than using a hidden or obscured window, you should use a framebuffer object and render directly into a texture. You can still call glReadPixels into a PBO if you wish, and the result will be well defined.