• D3D11中的硬件反锯齿 SSAA/MSAA/EQAA/CSAA(3)


    五 、EQAA/CSAA

           EQAA(enhanced quality AA)和CSAA(coverage sample AA)其实是同样的采样技术,EQAA是AMD的实现,CSAA是NV的实现,下面我以EQAA为例看看这两种AA的原理:

          在MSAA中,每个采样都有一个sample color缓冲相对应,这样在AA数目比较大的时候,比如16XMSAA,对memory的需求很大,为了节省内存带宽,就出现了EQAA/CSAA这些基于覆盖采样(coverage sample)的AA技术。

          所谓coverage sample,就是说这些采样不会有对应的sample图像输出,但会进行深度模版测试,最终在resolve 采样输出图象时候,这些coverage sample点会作为权重,计算在内。与coverage sample相对应就是color sample,这些采样有真正输出颜色缓冲。

    下图中EQAA的例子,标出了不同采样点的位置:

    image

          下面我们以4f8X EQAA为例,看下EQAA是如何操作的,所谓4f,就是说有4个color sample点,8X就是共有8个sample,其中4个为coverage sample点,如下图所示:

    image

          假设现在有2个fragement(就是2个mesh,覆盖到了这个像素),她们的颜色分别为(136, 0, 21), (0,111, 192),四个color sample点得到4个采样颜色输出,最终resolve后的颜色为((136,0,21)*5 + (0, 111, 192)*3)/8 = (85,47,111),可见coverage sample点虽然没有输出颜色缓冲,但可以作为权重,影响最终的颜色结果。

    image

          在2个fragment的情况下4f8X EQAA实现了8XMSAA的效果,其实因为有四个color sample,在4个fragement情况下,也可以实现8XMSAA的效果(但不是一定实现,和fragment的分布有关),甚至5个fragment或者更多fragment,根据fragment的分布也有可能实现8XMSAA的效果,下面是4个fragment和5个fragment的图,可以看出由于fragment分布原因,4个fragment的图实现了8XMSAA的效果,但5个fragment的则没有:

    image

    image

    在D3D11中,AMD的显卡EQAA的设置对应关系如下表所示:

    image

    NV的显卡CSAA的设置对应关系如下,相比之下AMD的EQAA可选组合更多。

    image

  • 相关阅读:
    StatusBar
    iOS开发UI篇-UITabBarController简单介绍
    iOS最全梳理
    UITabbarController的UITabbarItem(例:"我的")点击时,判断是否登录
    iOS APP 发布上架流程
    IOS开发
    IT教育课程考评系统开发-26
    IT教育课程考评系统开发-25
    2020100201-1
    IT教育课程考评系统开发-24
  • 原文地址:https://www.cnblogs.com/mikewolf2002/p/2785441.html
Copyright © 2020-2023  润新知