glReadPixels() 没有 return 抗锯齿图片

glReadPixels() doesn't return an Anti-aliased picture

当我将我的场景渲染到屏幕上时,场景使用 _MultiSampling Anti-Aliasing 8x; 没关系。

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

代码:

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

如何使用 MSAA 转换(过滤器)访问像素缓冲区?

glReadPixels 没有特殊参数。

旁注:我想使用 Opengl 1

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

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