1、随机采样
在基本光线追踪算法中,只追踪有限数目的光线。这是一个采样过程(sampling process)。
采样有很多种方法:
a、均匀采样
举例:根据给定的区间绘制数学函数。
将区间划分为许多小的宽度一致的小区间,在小区间的中点处计算函数的值,最终将这些点平滑连接出来。
在小区间数目很少的情况下,均匀采样可能会得到错误的结果。
b、随机采样
使用随机间隔宽度代替统一间隔宽度。
可以使用随机采样绘制平滑的阴影;绘制模糊的反射和折射;考虑景深;考虑运动模糊。
2、路径追踪
路径追踪算法考虑了全局光照问题。之前的光线追踪只考虑了四种类型的光线,没有哪一条光线考虑了物体之间的作用。
通过追踪交点周围所有路径的光线来计算间接光照,为了避免无限渲染次数,所有的可能光线路径使用随机采样。这种方法的光线分布通常是半球形,中心点是交点。
渲染有天空光的户外场景中,路径追踪算法非常有效率。因为这种场景下光变化的频率不大,也就是说,采样的函数值变化不大,小规模的采样依然可以得到很好的效果。
双向(Bidirectional)路径追踪额外追踪了发自光源的光线,减少了路径追踪的采样次数。
3、光子映射(photon mapping)
两通道算法,考虑了全局光照和物体之间的反射,实现了caustics effect。
Pass 1-创建photon map
光线(光子)从光源开始追踪,光子携带从光源散发的一部分能量。
当光子在场景中传播时,可能被反射、穿透、吸收。
当光子击中漫反射表面时,使用map存储射进的能量。
photon map以k-d tree数据结构实现。
Pass 2-渲染阶段
使用光线追踪算法。在交点处,使用存储在map中的信息去估计光照度。
-
光子
+关注
关注
0文章
110浏览量
14429 -
采样
+关注
关注
1文章
121浏览量
25559
原文标题:【扩展】光线追踪
文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论