当前位置:文档之家› 光线追踪算法汇总

光线追踪算法汇总


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