目录
PBR and PBR Materials
- 《Physically-Based Rendering》
Physically-Based Rendering (PBR)
- 任何关于渲染的课题都是基于物理的
- 材质、灯光、相机(透镜)、光线传播等等
- PBR不仅仅包含基于物理的材质,但是通常大家说的PBR都用来表示基于物理的材质
PBR materials in RTR
- 材质渲染中实时渲染远远落后与离线渲染(材质的丰富程度)
- 质量和准确度远低于离线渲染
- 在保证速度的前提下,尽可能提升材质渲染的质量
- 实时渲染中提到的基于物理的材质,基本上都不是基于物理的 (这句话的意思应该是,为了提升效率,对基于物理的材质渲染方法进行简化和近似)
- 优秀的渲染引擎
- Pixar – RenderMan
- Disney – Hyperion
- Weta Digital – Manuka
PBR materials
- 表面上定义
- 微表面模型(不是真正意义上的PBR)
- 迪斯尼BRDF(比较友好,但也不是真正意义上的PBR)
- 体积上定义
- 烟和雾
- 主要关注效率和近似单次散射和多次散射
- 云、头发、皮肤
- 通常不会有太多新的理论,但会有很多实现技巧(hacks)
- 实时渲染中,性能(速度)是考虑的关键因素。
- 所有材质都是离线材质算法在保证速度的前提下提高渲染质量
Microfacet BRDF
- 在渲染算法学习(三)中已经有详细笔记,因此这里只做一些新内容的总结
Normal Distribution Function (NDF)
- 法线方向的一个函数
- Beckman NDF(这里指各向同性Beckmann NDF)
D ( h ) = e − t a n 2 θ h α 2 π α 2 c o s 4 θ h (1) \tag1 D(h) = \frac{e^{-\frac{tan^2\theta_h}{\alpha^2}}}{\pi\alpha^2cos^4\theta_h} D(h)=πα2cos4θhe−α2tan2θh(1)
其中- α \alpha α是物体表面的粗糙程度(值越小越光滑(mirror/specular))
- θ h \theta_h θh是半程向量 h h h和宏观法线 n n n的夹角
- 公式(1)与渲染算法学习(三)公式(9)是等价的,只是将公式(9)中的 c o s cos cos项转换成 t a n tan tan项(已经手撕过了)
- Beckmann NDF类似高斯函数
- 可以表示不同粗糙程度的表面
- 定义在坡度空间上(slope space)
- 可以保证在坡度空间下 ,无限大的函数也能保证不会出现面朝下的微表面
- 归一化性质
- 保证NDF函数在per unit solid angle上积分为1
- GGX分布
- 分布特点:long tail(长尾)
- Beckman分布很快就衰减到接近0
- GGX也是很快衰减,但是在衰减到一定程度时,衰减的速度会减缓
- 使用GGX分布在渲染光源时,由于其衰减越趋近0,其衰减的速度越慢。因此,高光周围会出现很明显的光晕。这种长尾巴可以带来很自然渲染的效果。
- 分布特点:long tail(长尾)
- GTR (Generalized Trowbridge-Reitz)
- 为GGX扩展方法,可以通过调整参数自定义尾巴长度
- γ \gamma γ值越小,尾巴越长
- γ = 2 \gamma = 2 γ=2为GGX
- γ \gamma γ取最大值时为Beckman NDF
- 为GGX扩展方法,可以通过调整参数自定义尾巴长度
Shadowing-Masking Term(Term G)
- 该节填一下渲染算法学习(三)的坑,详细做一下微表面模型G项的总结
- the geometry term G
- 表示微表面模型自遮挡情况
- 光源被遮挡(shadowing)
- 相机看不到的微表面(Masking)
- 因此G也称Shadowing-Masking Term
- G项为了解决由于遮挡产生的darkening(变暗)的现象
- 由于遮挡问题,导致最终渲染结果没有通过计算得到的结果亮。因此需要提供一个变暗的操作。
- 变暗操作的一些性质
- 垂直微表面模型看时,不做变暗操作(无自遮挡)~1
- 与微表面掠射角度(grazing angle)看时,会变暗非常多(自遮挡很多)~0
- 表示微表面模型自遮挡情况
- The Smith shadowing-masking term
- 分成两部分(由于shadowing和masking是相关的,该方法假设这两项不相关)
- shadowing
- masking
G ( i , o , m ) ≈ G 1 ( i , m ) G 1 ( o , m ) (2) \tag{2} G(i,o,m) \approx G_1(i,m)G_1(o,m) G(i,o,m)≈G1(i,m)G1(o,m)(2)
其中- G 1 ( i , m ) G_1(i,m) G1(i,m)为shadowing自遮挡项
- G 1 ( o , m ) G_1(o,m) G1(o,m)为masking自遮挡项
- 缺陷
- 有能量损失
- roughness越大,能量损失越严重(越暗)
- 因为微表面越粗糙,沟壑越多,反射光更容易被其他微表面遮挡。因此多次弹射的占比越大。因此只考虑一次弹射计算BRDF,会有能量丢失。
- 白炉测试:测试BRDF能量损失
- 解决方法
- 将损失的能量补回来
- 准确方法[Heitz et al. 2016],适用于离线渲染
- RTR方法
- 被遮挡与发生下次弹射是同一概念
- The Kulla-Conty Approximation
- 通过经验模型来补充丢失的能量
- The Kulla-Conty Approximation
- 如果要补回损失的能量,就要计算出一次弹射时有多少出射radiance( L o ( p , ω o ) ) L_o(p, \omega_o)) Lo(p,ωo))
- 因此
- Kulla-Conty设从各个方向入射的radiance为1,即( L i ( p , ω i ) = 1 L_i(p, \omega_i)=1 Li(p,ωi)=1)
- 先求出微表面需要进行一次弹射的着色点的出射radiance,公式如下
E ( μ o ) = ∫ 0 2 π ∫ 0 1 f ( μ o , μ i , ϕ ) μ i d μ i d ϕ (3) \tag{3} E(\mu_o) = \int_0^{2\pi} \int_0^1f(\mu_o,\mu_i,\phi)\mu_i\mathrm{d}\mu_i\mathrm{d}\phi E(μo)=∫02π∫01f(μo,μi,ϕ)μidμidϕ(3)
其中- f ( μ o , μ i , ϕ ) f(\mu_o,\mu_i,\phi) f(μo,μi,ϕ)为BRDF项
- 该方法认为 ϕ \phi ϕ与 μ o \mu_o μo、 μ i \mu_i μi无关
- 由于 L i ( p , ω i ) = 1 L_i(p, \omega_i)=1 Li(p,ωi)=1。因此,公式无入射radiance项
- 渲染方程 c o s cos cos项在公式(3)中被换元
- 将公式(3)用渲染方程表示
- E o ( p , ω 0 ) = ∫ Ω + f r ( p , ω i , ω o ) c o s θ i d ω i E_{o}(p, \omega_0) = \int_{\varOmega^+}f_r(p, \omega_i, \omega_o)cos\theta_i \mathrm{d}\omega_i Eo(p,ω0)=∫Ω+fr(p,ωi,ωo)cosθidωi
- 由于单位球面可以展开为对 θ \theta θ 和 ϕ \phi ϕ 的积分
- r 2 s i n θ d θ d ϕ r^2sin\theta d\theta d\phi r2sinθdθdϕ (渲染算法学习(二))
- 单位立体角 d ω = s i n θ d θ d ϕ d\omega = sin\theta d\theta d\phi dω=sinθdθdϕ
- 换元
- E o ( p , ω 0 ) = ∫ Ω + f r ( p , ω i , ω o ) c o s θ i s i n θ i d θ i d ϕ E_{o}(p, \omega_0) = \int_{\varOmega^+}f_r(p, \omega_i, \omega_o)cos\theta_i sin\theta_i d\theta_i d\phi Eo(p,ω0)=∫Ω+fr(p,ωi,ωo)cosθisinθidθid
- 将公式(3)用渲染方程表示
- f ( μ o , μ i , ϕ ) f(\mu_o,\mu_i,\phi) f(μo,μi,ϕ)为BRDF项
- 分成两部分(由于shadowing和masking是相关的,该方法假设这两项不相关)

本文详细探讨了基于物理的渲染(PBR)及其在实时渲染中的应用。PBR致力于模拟真实世界中的材质,但在实时渲染中往往需要简化和近似。文章介绍了迪士尼的BRDF模型和微表面模型,特别是Normal Distribution Function (NDF)和Shadowing-Masking Term。此外,还讨论了Linearly Transformed Cosines(LTC)技术,用于解决多边形光源的着色问题,以及迪士尼的Principled BRDF,这是一种旨在简化艺术家编辑的材质模型。最后,提到了非真实感渲染(NPR)作为快速可靠的风格化工具。
-- Real-Time Physically-Based Materials&spm=1001.2101.3001.5002&articleId=121463992&d=1&t=3&u=30a399de9a1c4e1791153e7aedc4249f)
739

被折叠的 条评论
为什么被折叠?



