1、MSAA
URP支持:URP默认支持,适合绝大多数非延迟渲染游戏。
优点:显卡硬件支持,反走样效果较好,一般移动端用的较多方案,某些情况可以结合其它AA一起使用。
缺点:仅支持前向渲染,静态画面表现最好,运动画面一般,支持MRT的情况下效率较差,只能消除Geometry的反走样,对于高光像素部份无能为力,某些情况会出现物体暗边的情况。
2、FXAA
URP支持:URP默认支持,有Quality与Console两个不同版本,Quality版本需要PPV2,适合一些对低端硬件有要求、对画面模糊不敏感的特殊游戏。
优点:后处理支持 ,开销非常小,只有一遍PASS,适合移动端。
缺点:没有格外像素辅助,在高频颜色变化快的地方,动态场景会出现闪烁,对图形所有颜色边缘进行柔化处理,导致画面整体较模糊。
3、SMAA
URP支持:URP默认支持,适合一些对低端硬件有要求的特殊游戏。
优点:后处理支持 ,开销相对较小,适合低端PC端。
缺点:没有格外像素辅助,在高频颜色变化快的地方,动态场景会出现闪烁,三次pass,开销相对FXAA高一些,切换RT开销在手机上可能造成开销边缘处理比FXAA精细些,但依然有模糊表现。
4、TAA
URP支持:URP未来支持 ,可用PPV2扩展支持。
优点:支持延迟渲染,反走样效果较好,性能开销较小。
缺点:动态场景下,低帧率下可能出现鬼影,无法处理半透明物体、贴图序列帧动画物体需要客外内存开销,需要MotionVector Buffer。
效率:FXAA>SMAA>TAA>MSAA
质量:MSAA>SMAA>TAA>FXAA
优化总结:
1、高端移动设备上采用优化后的SMAA或FXAA,Unity默认URP下的TAA成熟后,根据性能与表现均衡选择采用。
2、中端移动设备上采用FXAA方式或关闭AA渲染。
3、低端移动设备上关闭AA渲染。
优化PostProcessPass.cs内SMAA的RT分辨率
对Pass1、Pass2的片上内存进行优化