openGL PBO使用wglcontext,不创建窗口

时间:2019-04-18 05:46:53

标签: c++ opengl glfw wgl

我的目标是从主窗口获取像素数据。没有任何渲染。 就像我们看到的监视器一样,例如屏幕捕获。

我试图透明窗口,glReadPixel。 所以我有一个透明的窗口和上下文。

<class 'method'> <class '__main__.Someclass'> 50

但是我想从GPU中获取像素数据而不创建窗口。

所以我用wglcreatecontext获取DC母窗口,HGLRC。

当我设置绑定缓冲区时,它会给出运行时错误。

class Forgetful():
    def __init_(self,p1=2,p2=3,p3=4):
        print(p1,p2,p3)   # only consumed, not stored

f = Forgetful()   # prints "2 3 4" but does not store, values no longer retrievable

我该如何解决问题?

有任何想法或链接吗?

1 个答案:

答案 0 :(得分:2)

从我收集的问题和评论答复中,您想使用OpenGL捕获任意窗口的屏幕截图?如果是这样,那么这不是OpenGL的意思。 您不能使用OpenGL 可靠地获取屏幕截图。

glReadPixels仅对您最初使用OpenGL绘制的内容可靠地 工作!