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类
答
我认为你渲染为米通过FBO屏幕渲染缓冲区或纹理。解决方案是创建一个使用MSAA像素格式的渲染缓冲区。 抗锯齿不是后处理过滤器!(至少不是以MSAA的形式实现它)。
+0
谢谢!它运作良好 –
'glReadPixels()'读取您在屏幕上看到的内容。如果它读取非AA图像,则AA不起作用。 – ikleschenkov
做'glBindFramebuffer(GL_FRAMEBUFFER,0);'从屏幕读取。 – stark