9.1 光的物理

物理渲染的基础是光和物质的相互作用,要理解这些相互作用,需要对光的本质有一个基本的了解。

在物理光学中,光是一种电磁横波,是一种垂直于传播方向的振荡电场和磁场的波,这两个场的振荡是同时存在的,磁场和电场矢量是互相垂直的,它们的波长之比是固定的,这个比值等于相位速度。

上图是一个简单的光波,这个波有一个波长,用希腊字母λ (lambda)表示。光的颜色与其波长密切相关,因此,只有一个波长的光被称为单色光,然而,在现实中遇到的大多数光波是多色的,包含许多不同的波长。

上图中的波是线性偏振的(linearly polarized),这意味着对于空间中的一个固定点,电场和磁场都沿着一条直线来回运动。相比之下,在这本书中,我们将重点放在非偏振光,这是更为普遍的。在非偏振光中,场振荡均匀地分布在垂直于传播轴的所有方向上。尽管它们很简单,但理解单色光线偏振波的行为是有用的,因为任何光波都可以被分解成这种波的组合。

如果我们跟踪给定的相位的波上的一个点(例如,振幅峰值),随着时间的推移,我们会看到它以恒定的速度穿过空间,这就是波的相速度(phase velocity)。 对于穿过真空的光波,相速度是c,通常被称为光速,大约每秒30万公里。

在8.1.1节中,我们讨论了这样一个事实:对于可见光,单个波长的大小大约在400-700纳米范围内。它大约是一根蜘蛛丝宽度的二分之一到三分之一,而蛛丝本身的宽度还不到人类头发宽度的五十分之一。如下图:

左边显示是是波长和蜘蛛丝的对比,右边显示的是蜘蛛丝和头发的对比。

在光学中,讨论相对于光波长的大小通常是有用的。在这种情况下,我们可以说蜘蛛丝线的宽度约为2λ-3λ(2-3个光波),而一根头发的宽度约为100λ-200λ。

光波携带着能量,能量流的密度等于电场大小和磁场大小的乘积,因为磁场大小电场大小的平方成正比,我们把重点放在电场上,因为它对物质的影响比磁场大得多。在渲染中,我们关注的是时间上的平均能量流,它与波幅的平方成正比。这个平均能量流密度就是辐照度(irradiance),用字母e表示。辐照度及其与其他光量的关系已在第8.1.1节中讨论。

光波是按线性组合的,组合的波是每个波的合。然而,由于辐照度与振幅的平方成正比,这似乎会导致一个悖论。例如,对两个相等的波进行求和,是否不会导致“1 + 1 = 4”的辐照度?既然辐照度用来度量能量流,这不会违反能量守恒吗?这两个问题的答案有时是对的,有时又不对。

为了说明这一点,我们将看一个简单的例子:添加n个相位不同的单色波, 每个波的振幅是a。如前所述,每个波的辐照度 E_1a^2 成正比,或者换句话说,对于某个常数k, E_1 = k a^2 。下图显示了这个例子的三种场景:

在左边,所有的波都以相同的相位排列并相互加强。组合波的辐照度是单个波的 n^2 倍,比单个波的辐照度值之和大n倍,这种情况称为相长干涉(constructive interference)。中间的图中,每对波处于相反的相位,相互抵消,组合波的振幅为零,辐照度为零,称为相消干涉(destructive interference)。然而,大多数情况下,当波相加时,它们是相互不相干的,这意味着它们的相位是相对随机的,如上图中另图所示,在这种情况下,组合波的振幅是 sqrt{n}a ,单个波的辐照度线性相加n倍,正如人们所期望的那样。

如此看来,相长干涉和相消干涉违反了能量守恒定律,但是上图并没有显示全貌——它只显示了一个位置的波的相互作用。当波在空间中传播时,它们之间的相位关系从一个位置到另一个位置会发生变化,如下图:

在某些地方,波会构成相长干涉,并且组合波的辐照度大于单个波辐照度值的总和,在其他地方,它们会产生相消干涉,导致综合辐照度小于单个波辐照度值的总和,这并不违反能量守恒定律,因为通过相长干涉获得的能量和通过相消干涉损失的能量总是相互抵消的。

当物体中的电荷振荡时就发出光波,引起振荡的部分能量——热、电能、化学能——被转换成光能,光能从物体辐射出去,在渲染中,这些对象被视为光源,我们在第5.2节中首先讨论了光源,在第10章中将从更物理的角度对它们进行描述。

散射的光波与原始波的频率相同。通常情况下,当原始光包含多个频率的光波时,每一个频率都分别与物质相互作用,以一个特定频率发射的入射光能不会对以不同频率发射的光能产生贡献,除了特定的、相对罕见的情况,如荧光和磷光,我们将在本书中不进行描述。

9.1.1 粒子

在理想气体中,分子之间互不影响,因此它们的相对位置是完全随机和不相关的,虽然这是一个抽象的概念,但对于常压下的空气来说,这是一个相当好的模型。在这种情况下,从不同分子散射的波之间的相位差是随机的,并且不断变化,因此,散射波是非相干的,它们的能量线性增加,换句话说,从n个分子散射的总光能是从单个分子散射的光能的n倍。

相反,如果分子紧密地聚集在比光波波长小得多的簇中,每个簇中的散射光波就会处于相位并相互干涉,这导致散射波能量以二次形式叠加,因此,从n个分子组成的小团散射的光强度是从单个分子散射的光强度的 n^2 倍,这是理想气体中相同数量分子散射的光强度的n倍,这种关系意味着,对于每立方米在分子密度一定的情况下,分子聚集成簇将显著增加散射光的强度,使簇变大,同时保持整体分子密度不变,将进一步增加散射光强度,直到簇直径变得接近光波长,然后,簇大小的额外增加不会进一步增加散射光强度。

这个过程解释了为什么云和雾的散射光会如此强烈,它们都是由冷凝产生的,这是空气中的水分子聚集成越来越大的簇的过程,这大大增加了光散射,即使水分子的总体密度没有变化。

当讨论光散射时,粒子这一术语既指孤立的分子,也指多分子团簇,由于直径小于一个波长的多分子粒子的散射是孤立分子散射的放大(通过相长干涉)版本,它表现出相同的方向变化和波长依赖性,这种散射在大气粒子的情况下称为Rayleigh scattering,在粒子嵌入固体的情况下称为Tyndall scattering。

当粒子的大小超过一个波长时,散射波在整个粒子上不再处于相位,这一现象改变了散射特性,散射越来越倾向于正向,波长依赖性逐渐减小,直到所有可见波长的光散射相等,这种散射称为Mie scattering。

9.1.2 介质

另一个重要的例子是光通过均匀介质传播,均匀介质是一个充满均匀间隔的相同分子的体积,分子间距不必像晶体那样完全规则。如果液体和非结晶固体的成分是纯的(所有的分子都是相同的),并且没有空隙或气泡,那么它们在光学上是均匀的。

在均匀介质中,散射波排列成一排,使它们在除原始传播方向外的所有方向上发生相消干扰。当原始波与所有从单个分子散射的波结合后,最终的结果与原始波相同,除了它的相速度和(在某些情况下)振幅, 最后的波不表现出任何散射——它已被相消干涉有效地抑制了。

原波和新波的相速度之比定义了介质的一种光学性质,称为折射率(IOR)或折射率,用字母n表示。有些介质是可吸收的,它们将部分光能转换为热能,使波的振幅随距离的增加呈指数级减小,衰减率由衰减指数定义,以希腊字母κ (kappa)表示,n和κ通常随波长而变化。这两个数字完全定义了介质对给定波长的光的影响,它们经常被组合成一个复数n + iκ,称为复折射率。折射率去掉了光相互作用的分子级细节,使得将介质视为一个连续的体积,这就简单得多了。

虽然光的相速度不会直接影响视觉效果,但速度的变化会,我们稍后会解释,另一方面,光的吸收对视觉效果有直接的影响,因为它降低了光的强度,并且(如果根据波长变化)也会改变光的颜色,如下图:

四个小容器的液体具有不同的吸收特性。 从左到右:清水、石榴汁水、茶和咖啡。

非均匀介质通常可以模拟为含有散射粒子的均匀介质。在均匀介质中抑制散射的相消干涉是由分子的均匀排列引起的,因此是由它们产生的散射波引起的。分子分布的任何局部变化都会打破这种相消干涉的模式,允许散射的光波传播,这种局部变化可以是不同分子类型的簇、气隙、气泡或密度变化,无论如何,它会像前面讨论的粒子一样散射光,散射特性同样依赖于蔟团的大小,甚至气体也可以用这种方法建模。因此,“散射粒子”是由分子不断运动引起的瞬时密度波动,该模型可以为气体建立一个有意义的n值,这对理解气体的光学性质是有用的。下图显示了一些光散射的例子:

从左到右:水,加了几滴牛奶的水,加了10%牛奶的水,全脂牛奶,和乳白色玻璃。 大多数牛奶的散射粒子都比可见光波长大,所以它的散射基本上是无色的,在中间的图像中有一种微弱的蓝色。 乳白色玻璃中的散射粒子都小于可见光波长,因此蓝光的散射比红光更强烈。 由于明暗背景的对比,透射光在左侧更明显,散射光在右侧更明显。

散射和吸收都与尺度有关。 在小场景中不产生任何明显散射的介质在大尺度上可能产生相当明显的散射。 例如,当观察房间里的一杯水时,光在空气中的散射和在水中的吸收是不可见的。 然而,在更大的的环境中,这两种效果都是显著的,如下图所示:

左边的图像显示,在数米的距离内,水吸收光线,尤其是红光,非常强烈。 右边的图像显示,即使在没有严重污染或雾的情况下,明显的光线也散射在数英里的空气中。

在一般情况下,介质的出现是由散射和吸收的某种结合引起的, 散射的程度决定了云层的外观,高散射造成不透明的外观。 除了一些罕见的例外情况,如乳白色玻璃,固体和液体介质中的颗粒往往大于光波长,并倾向于均匀地散射所有可见波长的光。 因此,任何颜色的色调通常是由波长依赖性的吸收引起的。 介质的亮度是这两种现象的结果。 特别是白色是高散射和低吸收结合的结果。 这将在14.1节中进行更详细的讨论。

9.1.3 表面

从光学角度看,物体表面是一个二维表面,将不同折射率的体分开。在典型的渲染情况下,外层包含空气,折射率约为1.003,通常为简单起见假设为1,内部体积的折射率取决于构成物体的物质。

当光波照射到一个表面时,受到两方面影响: 两侧的物质和表面的几何形状。 假设最简单的表面,一个完美的平面, 我们将“外部”(入射波产生的那一侧)的折射率表示为 n_1 ,将“内部”(波穿过表面后将被透射的那一侧)的折射率表示为 n_2

我们在前一节中已经看到,当光波在材料成分或密度(即折射率)上遇到不连续时,它们就会散射。分离不同折射率的平面是一种特殊类型的不连续,它以特定的方式散射光,边界条件要求平行于表面的电场分量是连续的,换句话说,电场向量在平面上的投影必须与平面的任意一侧相匹配,这有几个含义:

  1. 在水面上,任何散射波必须与入射波同相,或 180^o 异相。 因此,在表面上,散射波的波峰必须与入射波的波峰或波谷对齐。 这就限制了散射波只能向两种可能的方向移动,一种是继续向水面前进,另一种是后退, 第一种是透射波,第二种是反射波。
  2. 散射波必须与入射波具有相同的频率。 我们假设这里是一个单色波,但是我们讨论的原理可以应用于任何一般波,首先要把它分解成单色分量。
  3. 当光波从一种介质移动到另一种介质时,相速度——波穿过介质的速度——与相对折射率( n_1 / n_2 )成比例变化。 由于频率是固定的,所以波长也按( n_1 / n_2 )的比例变化。

最终结果如下图所示。 反射波和入射波的方向与表面法线的角度 theta_i 相同。 透射波的方向(折射)为 theta_ttheta_ttheta_i的关系如下:

sin(theta_t) = frac{n_1}{n_2}sin(theta_i) /

这个折射方程被称为斯涅尔定律。 它用于全局折射效应,这将在14.5.2节中进一步讨论

入射平面的光波,折射率为n1和n2。 图的左侧显示了一个侧面视图,入射波从左上方进入。 红色波段的强度表示波的相位。 表面下的波的间距与比率(n1/n2)成比例变化,在本例中为0.5。 相位沿表面排列,因此间距的变化弯曲(折射)透射波的方向。 三角形的构造说明了斯涅尔定律的推导。 为清晰起见,图的右上角分别显示了反射波。 它与入射波有相同的波间距,因此它的方向与表面法线有相同的角度。 图的右下角显示了波的方向向量。

虽然折射通常发生在透明的材料,如玻璃和晶体,它也发生在不透明物体的表面。 当不透明物体发生折射时,光在物体内部发生散射和吸收。 光与物体的介质相互作用,以金属为例,其内部包含许多自由电子(没有与分子绑定的电子),它们“吸收”折射的光能,并将其重新定向到反射波中。 这就是金属具有高吸收率和高反射率的原因。

我们已经讨论过的表面折射现象——反射和折射——需要在小于一个波长的距离内发生折射率的突变。 折射率变化不会使光分裂,而是使光的路径弯曲,类似于折射过程中发生的不连续弯曲。 这种效应通常可以在空气密度因温度而变化时看到,如海市蜃楼和热变形,如下图:

由于折射率的逐渐变化而引起的光路弯曲的一个例子,在这种情况下是由温度变化引起的。

即使一个物体有明确的边界,如果它浸没在具有相同折射率的物质中,它也不会有可见的表面。 在没有折射率变化的情况下,就不会发生反射和折射。 如图所示:

这些珠子的折射率与水一样。 在水面上,由于它们的折射率与空气的不同,它们有一个可见的表面。 在水下,珠子表面两侧的折射率是一样的,所以表面是看不见的。 由于颜色的吸收,珠子本身是可见的。

在渲染中,我们通常使用几何光学,这忽略了波的影响,如干涉和衍射。 这相当于假设所有表面的不规则性要么小于光波长,要么大于光波长。 在几何光学中,光被模拟成射线而不是波。 在光线与曲面相交的那一点上,该曲面被局部地视为一个平面。

正如我们前面提到的,比波长大得多的表面不规则性会改变表面的局部方向。 当这些不规则现象太小而无法单独呈现时——换句话说,比像素还小——我们称之为微观几何。 反射和折射的方向取决于表面法线。 微观几何的作用是改变表面上不同点的法线,从而改变光的反射和折射方向。

尽管表面上的每个特定点只在一个方向反射光线,但每个像素覆蓋了许多在不同方向反射光线的表面点。 外观是由所有不同反射方向的聚合结果驱动的。 下图展示了两个表面的例子,它们在宏观尺度上具有相似的形状,但微观几何形状却有显著不同。

左边是两个表面的照片,右边是它们的微观结构图。 顶部表面有轻微粗糙的微观几何形状。 射入的光线击中表面的点的角度有些不同,并在一个狭窄的圆锥方向反射。 可见的效果是反射物有轻微的模糊。 底部表面有粗糙的微观几何形状。 被射入的光线击中的表面点会有明显不同的角度,反射光会在一个宽的锥体中扩散,导致反射更模糊。

对于渲染,而不是显式地建模微几何,我们处理它统计和观察表面有一个随机分布的微观结构法线。 因此,我们将表面建模为连续方向上的反射(和折射)光。 这种扩大的宽度,以及反射和折射细节的模糊程度,取决于微几何法向量的统计方差,换句话说,就是表面微尺度粗糙度,如下图:

从宏观上看,表面可以看作是在多个方向反射和折射光线。

9.1.4 次表面散射

折射的光继续与物体的内部相互作用, 如前所述,金属反射大部分入射光,并迅速吸收其余的光。相比之下,非金属表现出各种各样的散射和吸收行为, 低散射和低吸收的材料是透明的,可以将任何折射的光穿透整个物体 , 在第5.5节中讨论了在没有折射的情况下渲染这些材料的简单方法,而折射将在第14.5.2节中详细讨论, 在这一章中,我们将重点关注不透明物体,在这些物体中,透射光经历多次散射和吸收事件,直到其中一些最终从表面重新反射回来,如下图:

上图中,折射的光在穿过材料时被吸收,在这个例子中,大部分的吸收是在较长的波长,主要留下短波长的蓝光,此外,它从物质内部的粒子散射,最终,一些折射的光被散射出表面,如蓝色箭头所示,从不同的方向离开表面。

这种次表面散射光以不同的距离从表面进入点。 入射出口距离的分布取决于材料中散射粒子的密度和性质。 这些距离和着色比例(像素的大小,或着色样本之间的距离)之间的关系是重要的。 如果入口-出口距离与遮挡尺度相比较小,则可以假设它们为遮挡。 这使得次表面散射与表面反射结合到一个局部的光照模型中,在一个点上发出的光只依赖于在同一点上进入的光。 然而,由于次表面散射光的外观与表面反射光有明显的不同,因此将它们划分为单独的遮挡项是方便的。 镜面项模拟表面反射,漫反射项模拟局部次表面散射。

如果入口-出口距离比阴影尺度大,那么就需要专门的渲染技术来实现光线从一点进入表面和从另一点离开表面的视觉效果。 这些全局次表面散射技术将在第14.6节详细介绍。 局部和全局次表面散射的区别如图所示:

在左边,我们正在渲染一个材质的次表面散射。 黄色和紫色分别显示了两种不同的取样大小。 大的黄色圆圈表示单个着色样本覆蓋的面积大于次表面散射距离。 因此,这些距离可以忽略,使次表面散射被视为局部光照模型中的漫射项,如右图所示。 如果我们靠近这个表面,着色样本区域会变得更小,如紫色的小圆圈所示。 与着色样本覆蓋的区域相比,次表面散射距离现在很大。 从这些样本中生成逼真的图像需要全局技术。

值得注意的是,局部和全局次表面散射技术模拟的是完全相同的物理现象。 每种情况下的最佳选择不仅取决于材料的性质,还取决于观察的尺度。 例如,当渲染一个孩子玩塑料玩具的场景时,很可能需要全局技术来精确渲染孩子的皮肤,而局部漫反射阴影模型对于玩具来说就足够了。 这是因为在皮肤中的散射距离比在塑料中大得多。 然而,如果相机足够远,皮肤散射距离将小于一个像素和局部光照模型对孩子和玩具将是准确的。 相反,在一个极端的特写镜头,塑料将显示出明显的非局部次表面散射,因此需要全局技术准确渲染玩具。

发表回复

相关推荐

好看的BG向小说推荐

1、玄学文——《重生之天才神棍》作者:凤今 文案:夏芍因救一位落入冰湖的老人,重生回了童年时代。这一世,人生尚在起跑线上 ...

· 32秒前

六大健身网站推荐

39健身_中国专业健身网站 39减肥频道是国内领先的减肥瘦身网站,介绍各种健康的快速减肥方法和减肥食谱,包括瘦脸、瘦腰、瘦腿 ...

· 49秒前

孩子们超喜欢的小学生英语书单,值得分享~

孩子在放松休息之余,将时间用来看书是再好不过了。

· 4分钟前

拉丁舞伦巴基本步

基本点: 上半身的三个力量(肋骨中间、胳肢窝、肩胛骨)、主力腿(膝盖伸直、整腿绷紧、骨盆向前)、中段

· 4分钟前

做自己的“悅己者”

都說“女為悅己者容”,現實生活中,有多少人取悅他人多過取悅自己。但人生是自己的,人有時也需要自己取悅一下自己,活出自我...

· 7分钟前