GAMES101-图形学笔记(13)渲染前沿技术

目录

1.无偏光线传播方式

1.1BDPT(Bidirectional Path Tracing)-双向路径追踪

1.2Metropolis Light Transport (MLT)

2.有偏光线传播方法

2.1 Photon Mapping (光子映射)

2.2  VCM(Vertex Connection and Merging)-光子映射 + 双向路径追踪

3.Instance Radiosity(实时辐射度算法)

4.前沿的外观建模技术

4.1.非表面模型

4.1.1 Participating Media(参与介质)

4.1.2 毛发、纤维

(1)Kajiya-Kay Model

(2)Marschner Model

(3)动物皮毛

(4)Double Cylinder Model(双层圆柱模型)

(5)Granular Material(颗粒状材质)

4.2 表面模型

(1)Translucent Material(半透明材质)

(2)Subsurface Scattering(次表面散射)

(3)Dipole Approximation(偶极近似)

(4)双向次表面散射反射分布函数(BSSRDF)

(5)布料材质


  有偏蒙特卡洛估计:期望 ≠ 正确值,只有使用无限个样本时,期望会收敛于正确的值;

  无偏蒙特卡洛估计:期望 ≠ 正确值;

1.无偏光线传播方式

1.1BDPT(Bidirectional Path Tracing)-双向路径追踪

从相机和光源处各自获得一个子路径,把这两个子路径连接起来形成完整的路径追踪;

在这种间接光照环境下效果比较好,之前学的路径追踪,光路是从相机出发,连接光源,形成一条路径,在这种环境下能弹射到光源表面的路径非常少,出现很多这种噪点,双向路径追踪就非常适合;

但缺点就是速度慢,比较复杂;

1.2Metropolis Light Transport (MLT)

Metropolis引入了马尔可夫链结合蒙特卡洛估计解二重定积分渲染方程;

马尔可夫链是一种采样工具,根据一个样本生成附近的样本;用在路径追踪里面,就可以实现局部扰动现有路径去获取一个新的路径 ,通过在现有采样点附近生成新采样点,连起来就是新路径;

适用场景:左图中只有门中有光线进来,属于间接光照,但场景复杂,双向路径追踪效果不好,用MLT只要找到一条,就能生成很多条类似的路径,从而提高渲染效果;

右图这种Caustics现象,摄像机出发,经过水面一次镜面反射,打到水底会漫反射,再经过水面镜面反射,最终连接光源;这种路径叫做SDS path 非常难计算,中途采样次数特别多,也是很难采到一条正确的路径,但MLT只要找到一条就能生成很多条路径;

缺点:很难估计收敛速度,不知道跑多久能产生没有噪点的渲染结果图;

MLT是局部的,不能保证每像素的收敛速度相等,结果就是通常会产生“肮脏”的结果,因此不用于渲染动画;

2.有偏光线传播方法

2.1 Photon Mapping (光子映射)

适合渲染焦散(caustics)、Specular-Diffuse-Specular(SDS)路径

常用方法

(1)photon tracing: 光源发射光子,镜面反射,打到漫反射表面后停止并记录;

(2)光子采集: 从摄像机出发,打出一些子路径,同样打到漫反射表面后停止;

(3)local density estimation(局部密度估计):摄像机出发打出的光线,击中表面视为一个着色点,着色点周围光子越多则越亮;遍历每个着色点,找到着色点最近的N个光子,并且计算他们他们所围成的面积,光子数量除以面积 N/A就是这一块光子的密度;

Photon Mapping问题:光子数量N取值小时噪声多;N取值大会模糊;

偏差产生原因着色点的密度 dN / dA ,但是我们实际是计算的 ΔN / ΔA ,只有光子数量无限大时ΔA趋近于dA才能趋近于真实值;

为什么不选择固定面积数光子:这样ΔA永远无法趋近于dA,也就无法趋近于真实值;

2.2  VCM(Vertex Connection and Merging)-光子映射 + 双向路径追踪

主要还是采用双向路径追踪算法进行计算,当两个子路径的端点在同一个平面内,这两个路径其实在BDPT中就被放弃掉了,因为直接连接这两个点不满足反射、折射等光线传播,对这两条路径用光子映射,认为光源那边的子路径发射的是光子;是对噪声和模糊折中的方案;

3.Instance Radiosity(实时辐射度算法)

把被照亮的表面当做一堆新的点光源(Vritual Point Light) (VPL) ,用直接光照的计算方法得到的间接光照的结果;

优点: 计算速度快,漫反射表现好;
缺点: Glossy材质表现差,当光源离着色点特别近的时候会出现亮点;
这是由于之前的渲染方程改良后,对光源采样代替了对半球上立体角采样,公式中,分母是光源上某个点到着色点的距离,当这个距离特别近,就会出现结果无限大的情况;

4.前沿的外观建模技术

外观 = 材质 = BRDF

4.1.非表面模型

4.1.1 Participating Media(参与介质)

微观散射粒子的集合,也可以叫做散射介质;

类似云、雾霾等,光线会穿过介质,介质会吸收一定的能量,并且往外随机朝各个方向散射能量;

与介质以何种方式向外散射的函数叫相位函数Phase Function,比如下图向后散射、均匀向空间散射、向前散射:

参与介质的渲染方式:色点不是击中平面某个点,而是参与介质中随机选择一个点。然后随机选择一个反射方向,随机选择前进多远,再选择某个点,重复进行直到光源,形成一个路径;

4.1.2 毛发、纤维
(1)Kajiya-Kay Model

一种比较简单的模型。光线击中细小圆柱,会被反射到一个圆锥形的区域中,同时还会进行镜面反射和漫反射,渲染结果不真实;

(2)Marschner Model

R:在毛发表面反射到一个锥形区域;

TT:光线进入内部,然后穿出再发生一个折射,形成一块锥形折射区域;

TRT:穿过第一层表面折射后,在第二层的内壁发生反射,然后再从第一层折射出去,也是一块锥形区域;

(3)动物皮毛

和人头发一样都是表皮、皮质、髓质;但人类毛发髓质比较少,动物的髓质特别厚,光线进去更容易发生散射;把髓质加入考虑之后,渲染效果提升很大;

(4)Double Cylinder Model(双层圆柱模型)

Marschner Model 的基础上考虑了髓质,比之前的毛发模型多出了两种作用方式TTs和TRTs,加入了髓质对光线的散射作用;

(5)Granular Material(颗粒状材质)

计算量巨大,应用少但效果好;

4.2 表面模型

(1)Translucent Material(半透明材质)

光可以从一个地方射入,另一个地方射出;

(2)Subsurface Scattering(次表面散射)

光线从一个点进入材质,在表面的内部经过多次散射后,从其他点射出;

求解某个着色点在相机方向的Radiance,不仅要对该点的半球面上入射光积分,还要考虑对该表面其他点的不同入射方向的光进行积分;

次表面反射渲染方程:

(3)Dipole Approximation(偶极近似)

Subsurface Scattering的近似方法,入两个点光源来近似达到次表面散射的效果;

(4)双向次表面散射反射分布函数(BSSRDF)

是对BRDF延伸,某个点出射的Radiance是其他点的入射Radiance贡献的,BRDF入射出射是同一个点,BSSRDF是不同点;

(5)布料材质

看作一个表面忽略细节进行渲染

看做参与介质进行渲染,这种渲染效果更好

按照每一根纤维渲染,效果好但计算量巨大

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值