【程序猿】Tri-Ace:在Shader里近似渲染公式
继上一篇:次世代基于物理渲染的反射模型,本篇是Tri-Ace 在cedec2014上最近发布的,主要内容如名称所示,解释了他们在实现基于物理渲染时,对shader的渲染公式所做的近似工作。
因为本身就是会议上的PPT,还是必须配合演讲看效果才好,所以如果有错误或不理解的地方,还希望留言或联系我
另外3A在官网上说会提供英文版,那家公司或个人希望可以分享下吧。
大致做下简介,如果有兴趣的可以下载看看
在本篇ppt中,3A先是花了一些篇幅介绍了渲染公式积分所引发的问题,随后是介绍本文中主要运用的正态(高斯)分布函数和它的再生性,以及使用对渲染公式做近似拟合的推导,如GGX的拟合。
接下来感觉比较重点的还是在几个应用案例上,其中之一就是关于如何正确的计算Roughness和Roughness Mipmap的生成上,在基于物理渲染上,更是强调要解决着色走样的问题,也就是需要 shading/shader anti-aliasing,其中一个问题就是运动状态时的Specular Aliasing问题的解决。
为了解决类似问题,Michael Toksvig 2004发表的Mipmapping NormalMaps 的方法,用正态分布方法处理Normal map,依靠mipmap和硬件的texture filtering,来解决远距离downsampling normalmap会产生的aliasing问题,也就是简称Toksvig的方法(3A ppt里也多次提到)。
有Aliasing(左边)和没有(右边)
基于这个方法,就是Dan Baker等人在2010提出的LinearEfficient Antialiased Normal(简称LEAN),并在GDC2011上进一步提出Cheap Linear EfficientAntialiased Normal(简称CLEAN,LEAN的廉价版)的方法。
然后在Siggraph2012上,Dan Baker又发表了Rock-Solid Shading,将这个方法扩展到glossmap(Roughness),Environmental Lighting(IBL)等上面。
左原始 中按他们的方法把将法线方差加入到Roughness map
因为一部分是要做预处理的,在我之前翻译的Tri-Ace的基于物理渲染的美术资源设计流程的PPT里,他们也介绍了他们运用把些技术加入到美术制作流程的方法。
当然还有很多其他的相关文档的,因为大多是基于这些就不过多阐述了。
那么接下来说这篇PPT里用的Roughness Map mipmap技术,也就是高斯分布方法运用到了Roughness Map上,并给出了他们的处理流程和公式,和Rock-SolidShading的方法类似,也是把normal map和Roughness一起保存到Roughness map上。但方法和公式更物理一些。这种类似的方法也在Crytek的罗马之子里(Specular Aliasing Gbuffer filtering)。
关闭
打开
如果文章和翻译有问题欢迎在下方留言讨论哟~
……
添加小编微信,发送“程序”
即可直接加入GAD程序猿交流基地
获取行业干货资讯,观看大牛分享直播
↓长按添加小编GAD-沫沫↓