Real-Time Physically-Based Materials

在保证速度的时候尽可能提升质量,很多地方不是基于物理了
微表面模型
基于迪士尼标准的 BRDF
在表面、体积上定义着色
F
Fresnel Term

非金属和金属


近似公式

微表面法线分布

法线分布常用函数

半球数据可视化,也就是 Projected Solid Angle
从高斯分布变化而来,各向同性

在 tanθ 代表的切平面(坡度空间,而不是球面空间)上定义了的高斯函数,表示在看向某个像素点时,半程向量是 h 的概率
分母是为了在 ProjectedSolidAngle 上积分为 1
GGX
也叫做 Trowbridge-Reitz ,长尾

可以有光晕的现象

高光的过度比较柔和,GGX 效果比 Beckmann 好
Shadowing Masking Term
自遮挡问题

没有 G 项的话,球的边缘会非常亮,不符合物理的事实

视线或入射光线和法线夹角 90° 会产生剧烈的遮挡现象

能量损失
shadowing masking 会导致能量损失
使用白炉测试,可以看到颜色与周围不一致,变暗
白炉测试,各个方向入射光强度一致
微表面粗糙,只考虑一次 bounce 导致光线被挡住

the kulla-conty Approximation
经验性的方法,补全粗糙微表面因为多次弹射造成的能量损失
希望设计一个 BRDF 积分起来能弥补能量损失
计算公式过于复杂,所以预先计算好
物体表面有颜色,颜色意味着能量的吸收
递归考虑所有反射的可能性


使用预计算打表的方式,记录特定视线方向对于特定粗糙度的 BRDF 模型的 Eavg,
使用 Eavg 计算 1 - E(uo), 即能量补偿

颜色意味着能量的吸收,也就是能量损失
菲涅尔项也有能量损失

Eavg 是实际出 BRDF 的能量

微表面模型 + Diffuse 是错误的

最后更新于
这有帮助吗?