3
我可以渲染到屏幕,但我希望能够访问着色器渲染的原始像素。我知道如何将glReadPixels从屏幕上移除,但我希望在绘制到屏幕之前访问它们,以便将帧保存到磁盘。如何访问opengl 2屏幕渲染缓冲区的原始像素数据?
具体而言,我想使用着色器来处理永不显示的图像:1)从磁盘2抓取图像)渲染它3)输出回磁盘。
我可以渲染到屏幕,但我希望能够访问着色器渲染的原始像素。我知道如何将glReadPixels从屏幕上移除,但我希望在绘制到屏幕之前访问它们,以便将帧保存到磁盘。如何访问opengl 2屏幕渲染缓冲区的原始像素数据?
具体而言,我想使用着色器来处理永不显示的图像:1)从磁盘2抓取图像)渲染它3)输出回磁盘。
您是否尝试渲染到屏幕外纹理,如here?
是的,我有。 glCopyTexSubImage2D是我用来从屏幕外渲染缓冲区获取原始像素数据的命令吗? – akaru 2010-12-10 20:52:12
这只会在两个纹理之间复制数据。使用glReadPixels将数据读取到缓冲区并将其存储到磁盘。 – yurymik 2010-12-10 23:22:23