概念页
光与物质的交互
Light-Matter Interaction
光是电磁横波;它与物质交互的核心是散射(振荡的电场带动电荷振荡、再辐射出新波)和吸收。粒子的大小决定散射特性,均匀介质用复折射率描述,表面是折射率的突变界面,把光分为反射和折射;折射进物体的光经次表面散射后部分射出。散射距离与着色尺度的比较决定能否把次表面散射当作局部的漫反射项。本页对应 RTR4 9.1–9.2 节。
光的波动性质
- 电场与磁场互相垂直且都垂直于传播方向,二者长度比固定。单一波长 的光是单色光,实际多为多色光;本书关注非偏振光,任何光波都可分解为单色线偏振波的组合。
- 真空中相速度为 (约 30 万千米/秒);可见光波长约 400–700 nm,约为蛛丝宽度的 1/2 到 1/3。
- 能流密度正比于电场幅值的平方;时间平均能流密度就是辐照度 。
- 波线性叠加: 个同相波相长干涉,辐照度为单个波的 倍;反相则相消干涉为 0;相位随机的非相干叠加为 倍。在空间上相长与相消处的能量增减总是抵消,不违反能量守恒。
- 散射光与入射光频率相同,各频率独立交互(荧光、磷光除外,书中不讨论)。孤立分子向各方向散射,前后方向更强,短波长散射效率远高于长波长。
粒子
- 理想气体(近似常压空气)中分子位置不相关,散射非相干, 个分子散射 倍的光。
- 分子聚成远小于波长的簇时,簇内散射相长干涉,散射 倍;簇增大到接近波长前散射持续增强。这解释了云和雾(冷凝使水分子成簇)为何散射强烈,尽管水分子总密度不变。
- 小于波长的粒子:大气中称 Rayleigh 散射,固体中称 Tyndall 散射。大于波长后散射越来越偏向前方,波长依赖减弱直至各波长相同,即 Mie 散射(详见第 14 章)。
介质
- 均匀介质中散射波除原传播方向外全部相消,结果只改变相速度和(有时)幅值。相速度之比定义折射率 ;吸收使幅值随距离指数衰减,速率为衰减指数 ;二者合成复折射率 ,都随波长变化。吸收会降低亮度并(若随波长变化)改变颜色。
- 非均匀介质可视为嵌入散射粒子的均匀介质:任何局部改变(异种分子簇、气隙、气泡、密度变化)都会打破相消干涉而产生散射。气体中的散射体是瞬时密度涨落。
- 散射和吸收都依赖尺度:一杯水看不出吸收、房间里看不出空气散射,但在几米深的水中红光被强烈吸收、几英里的空气中散射明显。
- 外观由散射与吸收共同决定:散射程度决定浑浊度,高散射显得不透明;固体和液体中的粒子通常大于波长、各波长散射相同,因此色调通常来自吸收的波长依赖;白色来自高散射加低吸收。
表面
- 光学上表面是分隔两种折射率体积的二维界面;空气折射率约 1.003,常取 1。入射侧记 ,透射侧记 。
- 边界条件要求电场平行于表面的分量连续,因此散射波只能有两个方向(反射和透射),频率不变,相速度和波长按 改变。反射角等于入射角,折射满足 Snell 定律:
- 不透明物体表面同样发生折射,折射光在内部散射吸收。金属内部有大量自由电子,把折射光能量"吸收"并转入反射波,所以金属既高吸收又高反射。
- 折射率渐变(小于一个波长内的突变才会分光)不会分光,而是使光路弯曲,如海市蜃楼和热扰动。浸在相同折射率物质中的物体表面不可见。
- 几何形状:远小于波长的不规则不影响光,远大于波长的只使表面局部倾斜;只有 1–100 个波长的不规则会通过衍射使表面不同于平面(见薄膜干涉与分层材质)。渲染通常用几何光学:光是射线,交点处表面局部视为平面。
- 小于像素但大于波长的不规则称微几何。每个点只向一个方向反射,但一个像素覆盖许多点,统计上表面把光反射到一个连续的方向范围,宽度取决于微几何法线的方差,即微尺度粗糙度。见微表面理论。
次表面散射
- 金属反射大部分入射光并迅速吸收其余;非金属的散射吸收行为多样。低散射低吸收的材质透明;本章关注不透明物体,折射光多次散射吸收后部分从表面重新射出。
- 射出点与入射点的距离分布取决于散射粒子。若距离相对着色尺度(像素大小或着色样本间距)很小,可视为 0,次表面散射可与表面反射组合成局部着色模型:镜面项表示表面反射,漫反射项表示局部次表面散射。若距离较大,需要全局次表面散射技术(第 14 章)。
- 局部与全局方法模拟的是同一物理现象,选择取决于材质和观察尺度:孩子玩塑料玩具的场景中,皮肤可能需要全局方法而塑料用局部漫反射即可;相机足够远时两者都可用局部模型;极端特写时塑料也需要全局方法。
| 情况 | 处理方式 |
|---|---|
| 金属 | 折射光迅速被吸收,没有次表面散射或透明,颜色全部来自 |
| 低散射低吸收的电介质 | 透明,透射光穿过物体(第 5.5、14.5.2 节) |
| 不透明电介质,散射距离 < 着色尺度 | 局部模型:漫反射项 |
| 不透明电介质,散射距离 > 着色尺度 | 全局次表面散射(第 14.6 节) |
相机 (RTR4 9.2)
- 渲染计算从着色点到相机位置的辐射亮度。成像系统的传感器测量辐照度,需借助不透光外壳、小光圈和镜头使每个传感器只接收小范围方向的光,因此测量的是平均辐射亮度。
- 渲染传统上模拟针孔相机:光圈位置即相机点 ,也是透视投影中心;每个着色样本对应一条射线,抗锯齿可理解为从离散样本重建连续图像信号。
- 带镜头的相机允许更大光圈、收集更多光,但景深有限;即便完全对焦,每个传感器位置也接收一锥光线。每样本一条视线的理想化模型有时会带来数学奇点、数值不稳定或走样,记住物理模型有助于发现和解决这类问题。
GEA 的视角:光、眼睛与相机(卷 II 11.2.1–11.2.2、11.3.2)
光是横波
- 光是电磁辐射的通俗叫法,带电粒子加速(加热材料、金属中通电、核聚变等)时产生,具有波粒二象性:波动性来自电场和磁场的周期性振荡,粒子性来自能量以不可分的光子携带(卷 II 11.2.1)。
- 振幅 按惯例用电场描述,单位 V/m;频率单位 Hz。光是横波:电场 与磁场 相互垂直,也都垂直于传播方向(声波则是纵波)。偏振光中所有光子的场向量对齐;渲染中多数时候可以忽略偏振,少数情况下才需要考虑。
- 波长 (常用 nm)、频率 与波速满足 ,对真空中的光即 ; 与观察者速度无关。可见光谱中红光频率最低(波长最长),紫光最高;低于红光的是红外,高于紫光的是紫外(卷 II 11.2.1)。
眼睛与相机
- 人眼由晶状体、不透光的眼球和视网膜组成。视锥细胞能感知强度和颜色但对弱光不敏感,视杆细胞适合暗处但不分颜色,所以夜里看东西几乎是黑白的(卷 II 11.2.2)。
- 相机是人造眼:镜头、不透光机身、矩形成像面。胶片相机靠化学反应成像;数码相机的成像面是 CCD 或 CMOS 传感器的规则网格。
- 针孔与镜头:传感器本来接收各个方向的光;针孔让光线只能经过一个公共焦点到达成像面,于是图像上下左右都颠倒。针孔进光太少、曝光时间太长;开大孔就需要镜头折射聚焦,像依然是倒的。
- 视场与焦距:从成像矩形四角穿过针孔向外追踪光线,得到金字塔形的观察体积,四个平面与中心视线的夹角就是视场角 (FOV),可按水平或垂直给出。镜头偏折光线越少,焦点越远,所以视场也可用焦距 描述:
其中 是机身内成像面的高度(求水平 FOV 时用宽度)(卷 II 11.2.2.3)。
原书问题(11.2.2.3):GEA 把 FOV 定义为"四个平面与中心视线的夹角",但每个平面与中心视线的夹角只有半个视场角;视场角是相对两平面之间的夹角,GEA 自己给出的公式 也是全角(前面的 2 就是半角乘 2)。此外这个公式严格成立的前提是对焦在无穷远(成像面恰在焦平面上);对近处物体对焦时像距大于 ,实际视场角更小(Wikipedia "Angle of view (photography)":,并说明对焦距离有限时要用有效焦距)。
虚拟相机
- 渲染引擎不受曝光时间限制,用简单的针孔相机模型就能得到照片级结果;代价是失去镜头光晕、景深、散景、暗角、鬼影等细节,这些通常靠后期"伪造",少数高级引擎用真实镜头模型让它们在光传输模拟中自然产生(卷 II 11.3.2,见 景深、泛光与镜头光晕)。
- 虚拟世界不需要不透光机身,只保留焦点;把成像面从焦点后方 处挪到前方 处,任何穿过后方成像矩形的光线也会穿过前方同尺寸的矩形,而图像不再颠倒。相机的局部坐标系和视锥见 坐标空间 中的 GEA 部分。
与 RTR4 的表述差异:传感器测的是什么
| 来源 | 说法 |
|---|---|
| RTR4(本页「相机」) | 传感器测量的是辐照度;借助外壳、小光圈和镜头让每个传感器只接收小范围方向的光,因此测得的是平均辐射亮度 |
| GEA 卷 II 11.2.2.1–11.2.2.2 | 眼睛和相机传感器敏感的物理量是辐亮度;针孔或镜头的作用是让每个传感器只接收一个方向的光,从而"确保传感器真正测量的是辐亮度" |
两者的物理图景一致(靠光学结构把传感器的接收方向收窄),差别在于 RTR4 更严格地区分了传感器本身测的辐照度和由此得到的平均辐亮度。并列记录。
GEA 第 12 章的补充:光与表面、介质的交互(卷 II 12.1.2)
- 物质有固、液、气、等离子四种相,但对渲染来说更重要的是透光性:不透光的叫不透明(岩石、金属),透光的叫透光材质,在光学语境下常叫介质,又分透明(空气、玻璃、清澈平静的水)与半透明(磨砂玻璃、蜡、人的皮肤、雾、烟)(卷 II 12.1.2)。
- 光在透明介质中和在真空中一样走直线;只有遇到不同物理性质的材质边界才"有意思"。两种透光介质之间的边界是一种特殊的表面,叫界面。
- 光子遇到边界时:被反射(镜面反射路径可预测;漫反射即散射,方向随机)、被透射并通常折射,或被吸收(能量变成热),吸收随波长不同就形成了表观颜色(卷 II 12.1.2.1,折射与全内反射见 菲涅耳反射)。
- 术语分歧:GEA 这里说"漫反射也叫散射 (scattering)";本页上文 RTR4 的"散射"是更广义的物理概念(电荷振荡再辐射,反射、折射本身都是散射的结果),漫反射只是表面下多次散射/微观粗糙表面造成的宏观现象之一。两种用法并存,读 GEA 时把"散射"理解为"方向随机化的反射"即可。
- 参与介质(如烟:空气加灰烬煤烟颗粒)会散射并衰减穿过的光(卷 II 12.1.2.2,见 参与介质与体积散射)。
- 可忽略的交互:光子通过宽度接近波长的窄缝时会衍射并产生干涉条纹;表面可能有光致发光,吸收一种能量和波长的光子、发出能量更低波长更长的光子;立即发射且只在受照时发光叫荧光,存储能量、关灯后仍发光叫磷光。3D 渲染通常忽略这些,因为在多数场景中视觉影响很小甚至没有(卷 II 12.1.2.3)。本页 RTR4 侧在 薄膜干涉与分层材质 中处理了干涉的一种实际可见情形。
出处
- realtime_rendering_4ed.pdf 第 9 章 Physically Based Shading
- Game_Engine_Architecture_4th_Edtion_Volume_2_-_Jason_Gregory.pdf
- Jason Gregory《Game Engine Architecture》第 4 版(2026)卷 II 第 11 章 11.2.1–11.2.2、11.3.2 节
- Jason Gregory《Game Engine Architecture》第 4 版(2026)卷 II 第 12 章 12.1.2 节
相关页面
图形学基于物理的着色Physically Based Shading基于物理的着色从光与物质交互的物理出发,用 BRDF 和反射方程计算表面沿视线方向射出的辐射亮度:镜面项来自微表面理论与菲涅耳反射,漫反射项来自局部次表面散射,布料、波动光学与分层材质再作扩展。本页是 RTR4 第 9 章的总览,并收录该章第 9.13 节的材质混合与材质过滤(镜面抗锯齿)。图形学双向反射分布函数BRDFBRDF f(\mathbf{l},\mathbf{v}) 量化局部反射:只依赖入射方向 \mathbf{l} 和出射(观察)方向 \mathbf{v},涵盖表面反射与局部次表面散射。它通过反射方程把入射辐射亮度转换为出射辐射亮度,物理上需满足 Helmholtz 互易性与能量守恒,用方向反照率检验。方向光和精确光源可从小面光源的极限推导,使积分变为对光源的求和。本页对应 RTR4 9.3–9.4 节。图形学菲涅耳反射Fresnel Reflectance菲涅耳方程描述光在两种物质的平坦界面上反射的比例 F,它取决于入射角和两侧折射率:垂直入射时为材质特有的 F0(特征镜面色),掠射时趋于 1。实时渲染用以 F0 为参数的 Schlick 近似。电介质 F0 低且无色,金属 F0 高且常带色,半导体介于其间;金属度参数化利用了这一点。光从物体内部射向表面时还可能发生全内反射。本页对应 RTR4 9.5 节。图形学微表面理论Microfacet Theory微表面理论把小于像素的微几何建模为大量平坦微面元,用法线分布函数 (NDF) D(\mathbf{m}) 描述其朝向统计,用遮蔽函数 G1 和遮蔽-阴影函数 G2 描述可见性,并据此推导宏观 BRDF。镜面反射时每个微面元是完美菲涅耳镜,积分退化为在半向量处求值,得到 FG2D/(4|\mathbf{n}\cdot\mathbf{l}||\mathbf{n}\cdot\mathbf{v}|)。GGX 分布配合高度相关的 Smith G2 是当今影视和游戏最常用的组合;该框架忽略微面元间的多次反射,可用补偿项弥补。本页对应 RTR4 9.6–9.8 节。图形学漫反射与次表面 BRDFDiffuse & Subsurface BRDF Models漫反射项模拟不透明电介质中的局部次表面散射(金属没有)。其颜色是次表面反照率 \rho{ss};选用光滑表面还是粗糙表面模型,取决于表面不规则与次表面散射距离的相对大小,而不只是表面有多粗糙。光滑表面模型从 Lambert 出发,通过与镜面项的能量权衡改进;粗糙表面模型有 Disney 漫反射、Oren-Nayar、Gotanda、Hammon 等。本页对应 RTR4 9.9 节。图形学薄膜干涉与分层材质Thin-Film & Layered Materials几何光学假设表面不规则要么小于一个波长、要么大于约 100 个波长;真实表面在 1–100 个波长范围(纳米几何)也有不规则,会产生衍射,厚度接近光波长的表面薄膜会产生薄膜干涉,这些都需要波动光学。现实材质还常常层层叠加,最简单也最重要的是清漆层。本页对应 RTR4 9.11–9.12 节。图形学辐射度量学与光度学Radiometry & Photometry辐射度量学精确度量电磁辐射,是基于物理渲染的第一步;光度学用人眼灵敏度对它加权。渲染中最重要的量是辐射亮度 L:眼睛和相机测的就是它,着色方程要算的也是沿视线的辐射亮度。图形学参与介质与体积散射Participating Media & Volumetric Scattering参与介质是充满粒子、通过吸收和散射参与光传输的体积,如空气、水、雾、烟、云;皮肤、蜡等致密材质也有强烈散射——"一切都是散射"。实时渲染主要考虑单次散射:沿视线积分透射率衰减后的内散射光,内散射由相位函数和对光源的可见性(不透明阴影 × 体积阴影)决定。通用实时方案把介质材质和散射结果体素化到相机视锥体素 (froxel) 中逐片累积(RTR4 14.1、14.3、14.8 节)。图形学实时次表面散射Real-Time Subsurface Scattering蜡、皮肤、牛奶等高散射固体中,光在离入射点不远处重新射出;当偏移大于一个像素时就不能再用 BRDF 表示。实时方法从便宜的包裹光照、法线模糊、预积分皮肤,到纹理空间/屏幕空间扩散,再到针对大尺度散射的深度图技术(RTR4 14.6 节)。图形学坐标空间Coordinate Spaces顶点从模型到屏幕要依次经过模型空间、世界空间、观察空间、裁剪空间、标准化设备坐标 (NDC)、窗口坐标。每一步变换都有明确目的,大部分可以用 4×4 矩阵表示并相乘合并。图形学景深Depth of Field相机在给定设置下只有一段深度范围清晰,范围外的物体越远离越模糊。实时渲染默认是完美对焦的针孔相机,所以"景深"指对近景和远景做模糊。实用算法从单张图像出发,按深度算出每像素的弥散圆半径,分离近景与其余部分分别模糊再合成;"边收集边散布"和对高亮像素单独溅射散景是游戏中的常见做法(RTR4 12.4 节)。图形学泛光与镜头光晕Bloom & Lens Flare镜头光晕是光经镜头系统或眼睛的间接反射等非预期路径产生的现象;泛光 (bloom) 是镜头和眼睛中的散射在亮光周围形成辉光、并降低其他地方对比度。显示器亮度有限,加入这些眩光效果可以暗示更高的亮度。实现上,光晕常用随光源位置变化的公告板或对亮部做图像处理,泛光则是"提取亮部 → 降采样模糊 → 加回原图"(RTR4 12.3 节)。游戏美术光与物质:反照率、散射与透射Light-Matter Production ChecklistDinur Ch5 生产检查项:光子到表面后只有吸收、反射/散射、透射等命运;反照率 (albedo) 是能量守恒的亮度尺。本页给 Look Dev / 材质审核清单;BRDF 与散射公式见图形学 光与物质的交互 等,不在此抄方程。