Real-Time Physically-Based Materials
 (surface models)

PBR and PBR Materials:基于物理的渲染,PBR分布在物体表面或者体积中。

 

 BRDF回顾:Fresnel term(菲涅尔项),从一点看去,有多少能量反射。

 grazing angle:入射(camera看的方向)方向与平面法向量的夹角,如果接近垂直,就会返回最多的能量,如果夹角接近为0,返回的能量就会最小。

 

Normal Distribution Function (NDF):法线分布函数

 Beckmann NDF:D(h)式子中的α越小,表示表面越光滑,反之越粗糙。其函数图像像高斯函数。
θh表示某个方向与(0,0,1)方向的夹角,忽略φ。

tanθ表示在球上面有一个平面,球半径为1,夹角θ所对应的边长为tanθ。

 GGX (or Trowbridge-Reitz)模型:它的图像有一个小尾巴的特点,因为它在往两边的方向上会变得小但不会变为0。

 

 也就是说它的高光不会全部消失,在角度逐渐变大的情况下,高光就慢慢变成了漫反射。

 

 

 GTR:对GGX的改进,通过改变系数的方法,可以改变其结果。

 

 

 Shadowing-Masking Term:BRDF中分子的第二项(G项),用于描述物体表面的自遮挡问题,当光线斜着照射到粗糙物体表面上时,就会被物体表面上的突起部分遮挡住后面的小片范围,所以被遮挡的范围的亮度肯定会降低,所以Shadowing-Masking Term项就是用来降低亮度的。在grazing angles为0的时候,也就是从上往下垂直看的时候,是没有自遮挡的情况的,所以此时的亮度最高,grazing angles越接近90°时,自遮挡问题就会很严重,就会变得越暗。

 

 为什么G项很重要?以下图为例,先暂时不考虑G项,在看向F0时,入射方向与物体表面法线夹角几乎为0,此时BRDF得到的结果正常,在看向F0右边圈住的地方时,入射方向与物体表面法线夹角几乎为90°,BRDF的分母部分是法向量与入射方向和出射方向的点乘,所以分母就接近为0,BRDF整体就会无限大,球的边缘部分就会变成白色,这是不正常的结果。考虑G项后,入射方向与物体表面法线夹角几乎为90°,G项接近0,所以BRDF就会变得正常了。

 

 在对不同粗糙程度的物体做环境光照的实验时,发现表面的光滑的物体不会有能量丢失,而粗糙的物体表面会有能量丢失

 

 

 这是因为在一次弹射的情况下,光线会被粗糙物物体表面凸起的部分挡住。所以这里要多次反射,但模拟光线追踪是非常慢的。

 

 

工业界方法,实际情况是粗糙物体表面会发生能量丢失,所以这里使用弥补这些丢失的能量的方法。

 对于有颜色的BRDF如何计算,可以当作有能量损失。这里算平均的Frensel,不考虑入射方向。

 最后可以得到颜色项(后面再回来学,完全没懂。。。)

 

 

Linearly Transformed Cosines:一种实现微表面模型的着色方法,它主要应用在GGX法线分布函数上,这里不考虑阴影,在多边形光源下的着色,不使用采样的方法。在知道camera方向下,BRDF的lobe就可以确定。如果不使用LTC方法,就只能用采样的方法。

BRDF的lobe:在确定出射方向,就可以知道BRDF的入射方向的一个大致范围,比如下图中的蓝色范围,这是根据glossy来判断的。

 LTC的主要思想:在确定lobe之后,对于多边形光源,可以把lobe转变成cos项,这个cos项是有解析解的,然后就变成了cos项对应的多边形光源。

 

 主要方法:BRDF的lobe经过逆变换转变成cos,cos可以转变成BRDF的lobe。这里BRDF的lobe经过逆变换转变成cos,所有每个方向都用这个逆变换,所以多边形光源所对应的积分域也要发生变化。

 

假设多边形光源的每处radiance都是一样的,在渲染方程中,Li就可以拿到积分限外,把BRDF和cos项看作是F(ωi),ωi也要经过变化带入积分中,可得到J项,为常数项。这样就可以计算积分了。

 

 

 

Disney’s Principled BRDF:该方法是为了对艺术设计人员而设计的,它不保证材质物理正确性。

 

 Non-Photorealistic Rendering (NPR):在实时渲染中,一种快速并且可靠的风格化方法。比如原神的风格化。
它主要需要描边。B代表边界。C代表折痕。M代表材质边界。CS必须有两个面,且要在外边界上。

 

 对于描边方法,一种是着色的方法。在边界处,物体边缘的法向量就会与入射角度的夹角接近90°,我们设置边界值,比如夹角大于70°,就给他们对应的像素变成黑色。这是一种渐变的方法,它的颜色并不会突然停止。所以这里就会有一个问题,当法线与入射角夹角变化非常快时,就会造成不同的地方描边粗细不一样。

 

 几何的方法是在物体外面放上一个放大的物体放在物体后面,物体有正面和反面,正面和反面交接的地方就是边界线,所以这里使用放大的方面放在后面,然后给这个放大的反面渲染成黑色,这样看起来就会是描边的效果。

 

 

posted @ 2022-09-12 14:47  捞的不谈  阅读(68)  评论(0编辑  收藏  举报