现代计算机图形学(尤其是实时渲染与离线路径追踪)建立在坚实的数学基础之上。我们将整个体系提炼为以下四大支柱:
向量与矩阵:点积(光照余弦项)、叉积(法线/面积元)。
变换:齐次坐标、正交/透视投影、Rodrigues 旋转公式。
四元数:万向节死锁解决、Slerp 插值。
坐标系:球面坐标参数化、立体角面积元。
微积分:Jacobian 换元积分、弧长公式。
向量分析:梯度/散度、Gauss/Stokes 定理(可见性与光照积分)。
分布:均匀、余弦加权、GGX 法线分布。
蒙特卡洛:重要性采样 (IS)、多重重要性采样 (MIS)。
方差:估计器收敛速度
展开:泰勒展开 (Shader 优化)、球谐函数 (SH, 低频环境光)。
球面高斯 (SG):高频光照与 SSS 拟合。
求交:Möller–Trumbore (射线-三角)、分离轴定理 (SAT)。
在 BRDF 归一化、IBL 预计算以及渲染方程中,我们几乎无时无刻不在球面上做积分。理解**立体角微元(Solid Angle Differential)**的来源是图形学数学的必修课。
其中极角
为什么立体角微元是
在球面上,考虑一个极小"矩形补丁"。
将
分别对
计算叉积并取二范数(或计算度量矩阵
在北极点(
| 公式 | 几何/物理意义 | 应用场景 |
|---|---|---|
| 单位球的总立体角 | 环境光积分解 / 点光源能量 | |
| 半球余弦积分 | Lambertian BRDF 归一化 ( |
|
| 高次余弦积分 | Phong / Blinn-Phong 波瓣能量归一化 |
真实感渲染的核心在于求解**渲染方程 (Rendering Equation)**,它描述了表面某点
1. 非负性:
2. 赫米特对称性 (Helmholtz Reciprocity):
3. 能量守恒:
由于存在环境贴图(IBL)或复杂材质,该积分极难求解析解,只能依靠**蒙特卡洛积分 (Monte Carlo Integration)**:通过按照某种概率密度函数 (PDF)
为了降低方差(即渲染画面中的噪点),我们通常采用**重要性采样 (Importance Sampling)**。例如,对于漫反射表面,根据余弦项进行采样,其 PDF 为
在实时渲染中,我们无法负担逐像素的蒙特卡洛积分。除了使用低频的球谐函数(SH,通常到 3 阶即可近似漫反射)外,对于 高频镜面反射 或 次表面散射 (SSS) 的烘焙与拟合,我们常引入球面高斯 (Spherical Gaussians, SG)。
SG 的强大之处在于其代数性质极其优良:两个 SG 的乘积仍然是一个 SG,且 SG 的内积积分存在闭合解析解(Closed-form solution)。这使得它非常适合用来近似 BRDF 波瓣和入射光分布(如 ASG, Anisotropic SG)。
在二维截面上观测 SG 的形态。固定求值向量