OpenGL FXAA抗锯齿算法(Qt,Quality版本)

文章目录

  • 一、简介
  • 二、实现代码
  • 三、实现效果
  • 参考资料

一、简介

将FXAA添加到现有渲染器中很简单:它作为最终渲染通道[1]应用,仅将渲染图像作为输入,并输出抗锯齿版本。其主要思想是检测渲染图像中的边缘并使其平滑。这种方法快速有效,但会模糊纹理上的细节。该算法有两个版本Quality(侧重抗锯齿的质量)和Console(侧重于计算效率),之前已经实现过Console版本,这里实现Quality版本。相关原理如下所述:

假设一个场景首先被渲染成纹理图像,与窗口相同的分辨率。然后渲染一个覆盖整个窗口的矩形来显示这个纹理。对于这个矩形的每个像素,FXAA算法在所谓的片段着色器中执行。

1. 首先,我们需要将RGB图像转换为灰度图,转换公式如下所示:

你可能感兴趣的:(OSG&OpenGL,qt,c++,OpenGL,FXAA抗锯齿算法,Quality版本)