1 算法概念与基本原理

1.1 光传输的路径表示

路径追踪将光看作沿着一条“传输轨迹”传播:从光源出发,遇到场景表面或体介质后发生反射、折射或散射,继续传播,直至最终与相机传感器(或成像平面)相交。一次“完整路径”通常由若干段组成,每一段对应光在介质中的传播以及在交互点处遵循相应的物理规律。

在实现层面,路径可以用一系列状态变量表示,例如:路径上各交互点的位置、法线、入射/出射方向、材质参数,以及可能的介质属性。通过记录这些信息,算法才能在每次交互处评估能量如何沿方向分布,并将贡献累积到像素估计中。

1.2 渲染方程与蒙特卡洛估计

路径追踪的核心是对渲染方程(描述场景辐射如何在空间中传播并最终汇聚到相机)的解进行数值估计。由于渲染方程通常包含对所有可能入射方向的积分,以及多次反弹/折射带来的级数型项,直接解析求解往往不可行。

蒙特卡洛方法通过“随机采样”近似积分:从给定分布中抽取路径方向或交互事件,计算每条路径对目标量(像素辐亮度)的贡献,再对大量样本取平均或加权和。为了保持估计的统计正确性,通常会配合权重因子,将采样分布与被积分的真实函数之间的差异抵消。

1.3 采样与收敛特性

采样数越多,统计误差通常越小;但收敛速度会受到方差大小影响。路径追踪常见的误差表现为:在低采样时像素呈现噪声(例如斑点状或条纹状),随着样本数增加噪声逐渐减弱。软阴影与间接光往往需要更多有效采样才能稳定估计。

在实践中,“收敛”不仅指平均值更接近真实结果,也包括噪声的空间结构更不明显。很多优化策略的目标,就是降低估计的方差,使得在相同采样预算下结果更快变得可用。

2 渲染流程与实现框架

2.1 光线路径的生成

一种常见的工作方式是从相机出发生成光的反向路径(或等价形式),对每个像素采样若干条路径。每条路径包含: 1) 在相机处确定初始方向; 2) 沿该方向追踪直到与场景表面相交; 3) 在交互点根据材质与光照模型选择下一段方向; 4) 重复直到到达终止条件。

对于场景中存在体介质的情况,还会在路径中插入体相互作用事件,例如沿射线路径的散射位置采样等。

2.2 材质相互作用的建模

在每次与表面相交时,材质模型决定光如何分配到不同方向。常见做法是使用双向反射分布函数(BRDF)来描述反射,或使用双向透射分布函数(BTDF)来描述透射。算法会根据材质的参数(粗糙度、折射率、金属度等)计算:

  • 当前交互点处的散射/透射概率或其近似形式;
  • 下一方向的选择方式(与重要性采样紧密相关);
  • 路径贡献的权重(考虑概率与物理量之间的匹配)。

对于理想镜面、粗糙表面、半透明材质等情形,方向分布的“尖锐程度”不同,因此对采样策略和权重计算的敏感性也不同。

2.3 递归与终止条件

路径追踪天然是递归或迭代的:每次交互都会触发对下一段光传输的继续生成。为了让计算可在有限时间内完成,需要终止条件。典型终止来源包括:

  • 路径几何终止:离开场景、到达环境光/背景,或命中光源;
  • 物理事件终止:例如反射/折射组合导致光能进入不可进一步贡献的状态;
  • 概率终止:使用随机终止机制(见后文俄罗斯轮盘)使得估计保持无偏或近似无偏。

递归深度上限也常用于工程控制,但通常会配合概率策略,避免截断引入明显偏差

2.4 通过累积得到像素辐亮度

每条路径会产生对像素辐亮度的一个贡献值。贡献可理解为“能量沿路径传播并在最终视线方向上被记录”的结果,通常包含:

  • 材质散射/透射的项;
  • 与方向相关的几何因子(例如与法线夹角有关的项);
  • 采样概率相关的权重(以校正蒙特卡洛估计);
  • 可能的发光项或环境光项。

对像素的最终结果通常是对多条路径贡献的平均。若加入降噪或方差估计,输出还可能附带额外统计信息,以便后处理更稳定。

3 关键技术与优化策略

3.1 重要性采样

重要性采样的思想是:将采样分布选在更“可能贡献大”的区域,使样本更有效。由于路径贡献往往与 BRDF/BTDF 决定的方向概率密切相关,常用做法是让采样方向的分布尽量贴近材质的辐射分布形状。

这样做可以显著降低估计方差,减少在“贡献很小却仍被频繁采样”的浪费。实际工程中,重要性采样还会结合多种启发式近似,例如根据法线方向、粗糙度或光源分布来调节采样倾向。

3.2 俄罗斯轮盘(随机终止)

俄罗斯轮盘是一种概率性的终止方法:在路径达到某个深度后,以一定概率停止继续追踪,以一定概率继续。若停止,则该路径不再生成后续贡献;若继续,则对后续贡献施加相应的权重校正。

其目的在于用更少的平均交互次数节省计算,同时避免固定截断带来的偏差问题。合理选择终止概率(例如与路径当前能量或材质响应相关)能够在效率与误差之间取得平衡。

3.3 多重重要性采样

多重重要性采样用于在同一贡献项上同时考虑多种采样策略。例如路径可能既从材质分布采样方向,也可能从光源方向或其他启发式分布采样方向。然后对不同策略的估计进行融合,既利用各自优势,又减少单一策略导致的方差峰值。

数学处理上,常见形式会对各策略的权重进行归一化,确保合并结果在统计意义上合理。多重重要性采样往往能提升含有复杂光源分布、强烈局部高亮或强方向性材质场景的稳定性

3.4 方向采样与BRDF/BTDF一致性

方向采样与 BRDF/BTDF 一致性强调:采样分布、权重计算以及物理模型之间要匹配。若方向采样与真实散射分布不一致,会导致大量样本落在概率较低却可能产生较大贡献的区域,从而提高方差或引入偏差。

因此实现中通常要同时处理:

  • 选择下一方向时所使用的概率密度函数
  • 估计权重中的除法项与几何因子;
  • 以及对 BRDF/BTDF 的评估与采样概率之间的对应关系

一致性做得越好,结果越稳定,收敛也越快。

3.5 降噪与采样复用(概念层)

路径追踪输出通常是带噪的辐亮度样本。降噪方法可在保留细节的前提下抑制统计噪声,并提升观感效率。降噪常见依赖包括:额外缓冲(例如法线、深度、材质属性)以及对噪声统计的建模。

采样复用指在相邻像素、连续帧或局部区域共享部分采样信息,从而减少重复计算。虽然不同降噪与复用策略细节差异很大,但其共同目标是:在不显著牺牲物理合理性的情况下,降低每像素有效采样成本。

4 常见扩展与变体

4.1 双向路径追踪(思想与特点)

双向路径追踪将“从光源出发的路径”和“从相机出发的路径”同时生成,并在中间点附近尝试连接它们。这样可以更直接覆盖光能从光源传播到视线的路径空间,尤其在强间接光或难以通过单向采样捕捉的场景中更有优势。

它通常比单向方法更复杂:需要处理路径连接的概率、匹配项以及连接失败的情况。但在许多情况下,它能在相同预算下获得更低方差的结果,代价是更高的实现复杂度。

4.2 光子/体渲染路径追踪(体介质扩展)

在包含体介质(如雾、烟、体火焰)的场景中,光传播不仅发生在表面,还会在体内发生散射与吸收。体渲染路径追踪会把体相互作用纳入路径生成:路径可能在体中随机采样一个散射事件位置,然后继续沿新方向传播。

与此同时,体渲染还需要考虑体积分布函数、透射衰减以及相函数(描述散射各向同性或各向异性)。因此该变体在真实感上更强,但对采样与终止策略的要求也更高,噪声和性能挑战更明显。

4.3 自适应采样与误差度量

自适应采样根据每个像素或局部区域的“估计不确定度”来动态分配采样预算:误差大的区域多采样,误差小的区域少采样。这样可以把计算资源集中到对最终画面影响更大的位置。

误差度量可以来自样本方差、置信度指标或基于特征的预测模型。理论上它能减少无效采样;工程上则需要额外的评估开销与稳定性考虑。

4.4 偏差与无偏估计的差异

路径追踪在不同实现策略下可能出现偏差或保持无偏性。无偏估计指在统计上平均结果等于真实值;偏差则意味着期望与真实值存在系统性偏移。

常见偏差来源包括:固定最大深度的硬截断、使用近似模型但未做相应校正、某些重加权策略简化导致的误差等。使用俄罗斯轮盘并合理加权通常有助于无偏或近似无偏;而自适应停止、启发式剪枝等则更可能引入偏差,需要权衡可视质量与数学性质。

5 应用场景与效果讨论

5.1 离线渲染与计算机图形学

离线渲染强调最终画质与物理一致性。路径追踪能够自然生成软阴影、复杂的间接光照、真实反射与折射的能量传播,因此在影视级渲染、产品可视化与高质量生成等领域应用广泛。离线阶段允许更大的采样预算,通常更容易把噪声压到可接受水平。

此外,路径追踪统一了多种光传输现象的处理框架,便于在同一渲染器中叠加不同材质与光照模型,减少分阶段渲染带来的接口不一致。

5.2 交互式渲染的路径追踪思路

交互式渲染更关注速度与响应。路径追踪在该领域常采用较少样本并依赖降噪、时序复用或更强的采样引导,使画面在有限时间内逐步收敛。由于每一帧可能采样较少,画面噪声更明显,因此后处理与稳定性设计尤为关键。

常见思路包括:限制递归深度、采用俄罗斯轮盘降低平均成本、引入重要性采样与多重重要性采样提高有效样本比例。

5.3 特效渲染中的表现力

特效渲染常需要表现雾化体、体散射、火焰与半透明材料等复杂现象。路径追踪对体介质的扩展能力使其在烟雾体积、光束穿透、体内高光等效果上具备较强表现力。

同时,路径追踪能更自然地处理“多次交互后的能量再分配”,例如受折射影响的高光漂移、受反射链路影响的间接轮廓等,从而提升视觉真实感。但代价是计算压力更大,因此往往需要更紧密的优化与降噪配合。

6 局限性与工程权衡

6.1 噪声来源与方差控制

噪声主要来源于蒙特卡洛采样的随机性:样本数量有限会导致估计误差。方差越大,噪声越明显。方差可能在以下情况下增大:

  • 材质分布很尖锐(例如非常光滑导致方向采样覆盖不足);
  • 光源或环境光贡献集中在少数方向;
  • 路径事件在深度增加后仍可能产生显著贡献;
  • 体介质散射导致方向选择不确定性更强。

因此工程优化多围绕降低方差展开,例如重要性采样、一致性匹配、多重采样策略与更有效的权重校正。

6.2 计算开销与加速结构需求(概念)

路径追踪的计算量与光线-几何相交测试次数、递归深度、体相互作用事件数量等因素有关。特别是在场景几何复杂、采样数量增加时,相交测试成为主要瓶颈。

工程上通常需要加速结构以减少无效遍历,例如层次化包围体或网格化空间划分等,以降低每次追踪的几何求交成本。虽然加速结构属于更广泛的光线追踪工程范畴,但它对路径追踪的可用性起决定作用。

6.3 适用材质与光照条件边界

路径追踪能覆盖广泛的光传输现象,但在某些材质与光照条件下仍更难收敛或更耗时。例如:

  • 极度高频的反射细节(微表面导致方向敏感);
  • 强烈的折射链路或薄介质导致路径极其复杂;
  • 大体积参与散射的场景,体散射事件多且噪声更难压制;
  • 特别小且高亮的光源区域,若缺少针对性采样策略容易漏采或方差飙升。

因此在实际项目中常会结合场景特性选择采样策略、限制递归深度、调节降噪强度或进行分层优化。

7 相关术语与“梗”式理解(轻量)

7.1 “每个像素都是一次冒险”的直观比喻

把每个像素的估计看作一名“旅人”:它从镜头出发,沿着随机选择的方向穿梭在场景里,直到找到能贡献颜色的“终点”。样本多了,这个旅人的经历就更接近全貌;样本少了,就像只听了几段故事,自然更容易“有噪声”。

7.2 与光线追踪(Ray Tracing)的常见混淆

光线追踪强调“沿着光线寻找交点”的求交与递归求色框架,而路径追踪则强调“通过采样积分模拟光的传输路径”。两者在工程实现上可能共享求交、递归结构与加速数据结构,但数学目标不同:路径追踪更直接地把全局积分过程统一到蒙特卡洛估计中。

7.3 从“少量样本看天吃饭”到“多次采样见真章”

当每像素只用极少样本时,结果往往像“看天吃饭”:今天运气好可能接近正确,运气差就噪声明显。随着采样次数增加,随机偏差逐渐平均掉,图像更稳定,细节更可靠。降噪虽能让画面快速“像样”,但从原理角度仍可理解为用额外方法掩盖尚未完全收敛的统计噪声。