1.锯齿也称为走样,在信号理论基础上来说是因为采样频率不足造成的对原信号的偏差,下图很好的展示了这一现象:
图中可以看出原先高频曲线由于采样频率不足变成了另外一条曲线,顺着这个方向,如果我们将高频曲线用一低频曲线来表现,这样得到的曲线再用同一采样间隔来采样,得到的曲线就不会显得差异过大。再者将高频曲线用低频来表示的手段即模糊或者称为低通滤波,通常是用傅里叶等级数展示方式并且取前N项做近似。
2.图像中的抗锯齿也是类似解决思路:针对原图做模糊后再渲染。
3.MSAA的覆盖判断是发生在光栅化阶段,其他阶段也有部分参与,具体的实现方式:
图中讲到三角形绘制是依次进行感觉有点问题,应该是说光栅化三角形是存在顺序的,执行frag shader的只是单个像素(frag执行光照比较重,MSAA省了这步),子像素需要有N倍的缓冲来判断其子像素的覆盖和遮挡及记录颜色,frag执行后同步到通过测试的子像素, 最后resolve阶段处理的是每个像素最终颜色根据洒下的(低差异序列)子像素颜色求平均
默认的Resolve的办法是均值法,
FinalPixelValue = sum(SampleValue) / SampleCount;