glReadPixels()不会返回防锯齿图片

问题描述:

当我将场景渲染到屏幕时,场景使用就没关系。glReadPixels()不会返回防锯齿图片

但我想通过glReadPixels()读取像素缓冲区,我有一个带有别名线的别名图像。 它不使用8x MSAA

代码:

glReadPixels(0,0, w, h, GL_BGRA_EXT, GL_UNSIGNED_BYTE, (void*)pixels); 

如何访问到的像素与MSAA变换(过滤器)缓冲器? glReadPixels没有特殊参数。

侧面说明:我想用OpenGL的1

重要提示:我使用Qt 5.9的QOpenGLWidget类

+2

'glReadPixels()'读取您在屏幕上看到的内容。如果它读取非AA图像,则AA不起作用。 – ikleschenkov

+0

做'glBindFramebuffer(GL_FRAMEBUFFER,0);'从屏幕读取。 – stark

我认为你渲染为米通过FBO屏幕渲染缓冲区或纹理。解决方案是创建一个使用MSAA像素格式的渲染缓冲区。 抗锯齿不是后处理过滤器!(至少不是以MSAA的形式实现它)。

+0

谢谢!它运作良好 –