18 Games101 - 笔记 - 高级光线传播与复杂外观建模

**18 ** 高级光线传播与复杂外观建模

本章虽然是高级光线传播与复杂外观建模,但是都没有展开讲,不涉及具体的计算。

高级光线传播

  • 无偏的光线传播:如果无论样本多少,算出来的期望值永远是对的。例如蒙特卡洛积分,它没有系统误差。
  • 有偏的光线传播:算出的期望值有一定误差的。
  • 一致的光线传播:在有偏的情况下如果采样足够多的样本能够收敛到正确值。

无偏的光线传播方法

双向路径追踪

之前的路径追踪是单向的,运用光源可逆性,从眼睛到光源。
BDPT双向路径追踪分别从光源和摄像机生成一系列半路径,然后再连接两个半路径的端点形成整条路径。
img

img

  • 优点:光线传播在光源半边好算时,效果好
  • 缺点:慢

Metropolis光线传播(MLT)

  • 用马尔科夫链做蒙特卡洛积分

    • 马尔科夫链是一种能在当前样本附近生成下一个样本的方法
  • 在给定足够的时间下,可以以任意的函数为PDF生成样本,(当PDF的形状与要积分的函数形状一致时,使用蒙特卡洛积分效果最好)

  • 优点:

    • 特别适合做复杂光路的传播
  • 缺点:

    • 不知道收敛的速度(无法估计渲染时间)
    • 局部,脏
    • 所以不用来渲染动画

img

有偏的光线传播方法

光子映射

特别适合渲染SDS路径和焦散现象
img
举例一种方法:
img
光子映射是一种有偏但是一致的方法。

image-20240409102123141

img

  • 渲染领域对于有偏无偏的理解:

    • 有偏的结果相对于正确的结果会更模糊
    • 一致的说明在样本足够多的情况下会收敛到正确结果
  • 如果取作色点周围相同的面积去数里面的光子数,那结果是即有偏也不一致的

顶点的连接与合并(VCM)

  • 结合BDPT与光子映射

  • 主要思想:

    • 如果BDPT中的半路径的两个端点在一个平面上,不能被连接但可以被合并,我们就不要浪费这些半路径
    • 使用类似光子映射的方法把邻近的”光子“的贡献结合起来

img

实时辐射度(IR)

  • 主要思想:已经被照亮的表面就认为是光源
  • 从光源发出半路径,并假设每个半路径的终点是虚拟点光源,然后根据这些虚拟点光源渲染整个场景

img

  • 优点:速度快,通常在漫反射场景中效果良好
  • 缺点:当 VPL 接近着色点时会出现峰值;无法处理有glossy材质

复杂外观建模

非表面模型

散射材质:云/雾

在光线穿过参与介质的时候,会随机吸收(部分)和散射到各个方向,同时传播的过程中也可能会接收到其他方向散射来的光
image-20240409102535675

相位函数描述了参与介质中任意点x处的光散射角的分布。
image-20240409104420076
散射材质渲染的主要思想:

  • 随机选择一个方向弹射
  • 随机选择一段距离直走,走多远由介质的吸收能力决定
  • 在每个”着色点“,连接到灯光,计算路径的贡献

image-20240409104431462

头发/毛发/纤维

头发:
Marschner Model,应用比较广泛,这个模型把发丝看作内部有色素会吸收能量的玻璃圆柱,同时把头发结构分为两层,角质层和皮质层,光线打到头发的圆柱时,会被反射,以及穿进去折射后反射再折射出来,以及折射进入后折射出来,也就是R,TRT,TT (R: reflection, T: transmission)。
img
利用Marschner Model,让光线和多根头发发生多次散射,渲染困难,计算量大,但是效果很好
img

动物毛发:

img
从生物上的结构,头发/毛发分为角质,皮质以及髓质,对于动物来说,中间的髓质更大光线更容易发生散射
img
双层圆柱模型:模拟了光线经过髓质的效果,使用了五个分量来模拟毛发,在《猩球崛起》《狮子王》中得到应用。
img

颗粒材质

img
可以避免对所有颗粒进行显式建模,在一个单元上进行一些程序化的定义来简化模型
目前仍没有很好的高效渲染这种材质的方法,仍然非常耗时,没有得到很广泛的应用

表面模型

半透明材质

应用:玉石、水母
反应在物理上,这种半透明材质说明了光线发生了次表面散射:
img

image-20240409104611401

img

BRDF vs BSSRDF
img
真实的次表面散射材质和真实的皮肤质感

布料材质

布的结构:
img
当成表面渲染,根据不同织法给出不同的BRDF。
如果当成表面渲染意味着我们没法渲染类似天鹅绒的材质。
也可以通过单根纤维的特性即分布推算出散射参数,向渲染云那样的散射介质一样来渲染布料,但计算量大。
也可以把每一根纤维都渲染出来,但计算量更大。

细节模型

微表面模型中最重要的是它的法线分布,但是我们描述这个分布用的都是很简单的模型,比如正态分布之类的,真实的分布要更复杂。
真实的法线分布基本符合统计规律,但是又有一些细节
img
如果使用法线贴图来把这些起伏细节都定义出来,会非常耗时
使用路径追踪困难的点在于,微表面的镜面反射在法线分布复杂的情况下,很难建立有效的的光线通路从相机出发打到光源
img
波动光学的BRDF结果与几何光学类似,但由于干涉出现不连续的特点
img

程序化生成外观

利用三维空间中的噪声函数指导材质的生成,可以进行动态查询
应用:车绣效果、程序化地形、水面、木头纹理

  • 12
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值