同一个物体,为什么在一种灯下投出锐利影子,换种灯却变柔和?
阴影记录哪些光路能到达表面。光源很小时,通常不是可见就是被挡住;光源宽大时,障碍物可以只遮住其中一部分。可见光源比例逐渐改变,就形成半影:由部分照明构成的边界。
柔和边缘,记录了一盏只露出部分的灯。
朝灯的方向看回去
想象站在接收表面的一个点,朝灯看去。不透明障碍物若挡住整个光源,直接光贡献就不存在;整个光源可见时,直接光便可以到达;两者之间,只有部分光源能沿无遮挡路径照到这里。
这个解释不要求物体半透明或边缘模糊。本例障碍物的边界完全锐利。柔和来自光源具有尺寸,不同光线遇到同一边缘时,分别经过它的不同侧。

用小截面看清光路
计算采用二维截面:水平线光源高度为三,不透明遮挡物高度为一,接收面高度为零。遮挡物宽0.6单位。光源宽度依次为0.02、0.6和1.2单位,其他尺寸全部不变。
每个接收位置都向光源上均匀排列的1,001个点检查候选光线。若光线在遮挡物高度处的交点落在遮挡物内部,就算被挡住。剩余可见比例成为图中的数值。这是归一化可见性计算,不是完整的辐射度渲染。
光源越宽,过渡越宽
几乎是点光源的0.02单位光源产生狭窄边界,较宽光源产生更宽的过渡。在本例几何中,单侧边缘半影宽度等于光源宽度,乘以遮挡物到接收面的距离,再除以光源到遮挡物的距离。这两个距离分别是一和二。
预测宽度因此是0.01、0.3和0.6单位。光路图说明原因:来自光源两端的光线擦过同一遮挡边缘,却落在接收面的不同位置。光源变宽,这两条极限光线的落点就分得更开。

位置也影响柔和程度
把遮挡物移近接收面,会缩短极限光线继续分开的距离。所以,即使灯很宽,接触阴影仍可能比较清晰。若保持其他几何关系合适,把物体移离接收面,则可能扩大过渡区。
日常说的大光源,往往更准确地指从物体位置看去角度很大的光源。物理尺寸本身不够:很大的灯放得很远,也可能只占很小角度。本例固定距离、只改变宽度,就是为了不混淆这些变化。

可见性只是亮度的一部分
模型给予每个光源采样点相同权重。真实照明还取决于发射强度、距离、表面方向和二维发光区域的几何。间接光能照亮原本被挡住的区域,多个光源还会叠加多重阴影。因此,应把图理解为可见性曲线。 本例线光源在各个独立边缘产生近似线性的斜坡。圆形或矩形面光源可能产生不同形状的过渡,因为可见部分随二维面积变化,而非随线段长度变化。
相机又加入曝光、色调映射和采样。看起来暗的阴影不一定没有物理照明,照片中的软边也可能来自失焦或运动。实验只隔离一个机制:锐利不透明物体对扩展光源的部分遮挡。
把影子读成房间的线索
边界可以提示光源的视角大小,以及物体与表面的间距,但没有额外信息,无法唯一确定其中任何一个。不同排列可能产生相似宽度。完整影形还取决于物体轮廓和接收表面的弯曲。
绘制或布置简单场景时,一个实用问题是:每个点能看见光源的哪些部分?这个问题具体解释了平滑过渡,不必把柔和理解为事后随意涂在黑色剪影上的模糊。光线本身已经包含了边缘。
