La forma más fácil de renderizar fuera de pantalla con QOpenGLWidget

Tengo un QOpenGLWidget oculto (Qt 5.4.2, NO QGLWidget) y quiero básicamente hacer continuamente grab () o grabFramebuffer () para obtener su contenido (y escribirlo en el disco). El widget se muestra bien cuando está visible, pero no cuando está oculto. Si hago un show () seguido de una llamada hide () funciona. Esto parece extraño porque QOpenGLWidget internamente ya se procesa en un framebuffer de acuerdo con los documentos. ¿Cuál es la forma más fácil de lograr esto (si es posible sin crear otro framebuffer)?
Puntos de bonificación por poder capturar un QGraphicsView fuera de la pantalla usando un QOpenGLWidget como su ventana gráfica con QGraphicsItems personalizados pintados con OpenGL en él ...

Respuestas a la pregunta(2)

Su respuesta a la pregunta