概念页
阴影的真实感要素
Photoreal Shadow Essentials
Dinur Ch8:阴影没有神秘「种类」,但制作上要抓住软硬(本影/半影)、影色、重叠与嵌套、接触/邻近影。本页补 Birn「影的构图功能与 cheat」与图形学阴影算法之间的外观检查清单。
软硬:本影与半影 (umbra / penumbra)
站在墙影里完全看不见光源 → 本影;侧移到光源部分露出 → 半影。点光(仅存于 CG)无半影 → 影绝对锐利;真实光源皆有尺寸 → 至少有一点软边。光源越大、半影越宽;此外光源相对遮挡物与接收面的角度、遮挡物到影面的距离等,都会改变半影宽度与落出方向。影随距离变软,不只是「贴一张模糊」。
影的颜色
影不是「黑贴花」。影色由仍照亮该处的光决定:室外树影里仍有蓝色天空光;彩色墙的反弹会给影染色。多光源下,被 A 挡住的区域可能仍被 B 照亮,影是染色的缺光,不是固有黑。
重叠影 (overlapping)
多物体挡同一光源时,影应无缝衔接,不能每人一块透明度错误的黑斑。多光源则产生不同方向、不同软硬的影网。
嵌套影 (nested shadows)
已在树影中的汽车不再挡额外直射阳光,但其底盘更靠近地面,挡掉更多天空漫射 → 在树影内部再出一圈更暗的影;车下小石子又可再嵌一层。室内多灯+家具会形成不同强度、锐度、色相的嵌套马赛克。假感常来自「只有一层均匀暗」。
接触影 (contact shadows)
并非物理新种类,但对真实感与接景极关键:物体贴近或相触时,缝里被挡住绝大多数方向的光 → 接触带特别暗。人类用接触影做空间判断,对缺失/错位极敏感(CG 桌腿不沾地影会漂)。游戏里常用 AO/接触阴影近似承载这一线索(链 环境光遮蔽),但不能替代主灯方向影。
与 Birn / 图形学分工
| 层 | 页面 |
|---|---|
| 构图功能、少影、负灯等 cheat | 阴影的美术功能与假阴影 |
| 本页:软硬/色/嵌套/接触的外观准则 | 本页 |
| 算法:阴影贴图、PCSS、VSM… | 图形学 / UE 阴影页 |
出处
- Ch08 · Shadows
- The Complete Guide to Photorealism(章节文本)
- The Complete Guide to Photorealism for Visual Effects, Visualization, and Games (Eran Dinur).epub
- Eran Dinur 第 2 版 Ch8
相关页面
游戏美术阴影的美术功能与假阴影Shadow Visual Functions & Faking现以第 3 版 Ch3「Shadows and Occlusion」为准。 阴影与照明同等重要;occlusion 是可与常规阴影结合的柔和变暗。第 3 版新增 occlusion sandwich 等合成向手法。算法细节链图形学阴影/AO 页,本页偏美术功能与 cheat。图形学软阴影 PCF 与 PCSSSoft Shadows with PCF & PCSS百分比渐近过滤 (PCF) 在阴影贴图上取多个样本,分别与表面深度比较后混合结果,得到伪软阴影,但半影宽度恒定。PCSS 先搜索附近遮挡体的平均深度,再据此决定过滤宽度,从而在接触处硬、远处软(接触硬化)。图形学阴影贴图Shadow Mapping阴影贴图 (Williams, 1978) 先从光源位置渲染深度,再从相机渲染时把每个点到光源的距离与贴图中存的深度比较:更远就在阴影中。它开销可预测(生成约与图元数成线性、查询为常数时间),非常适合 GPU,是任意表面阴影最常用的算法。主要问题是分辨率、深度精度带来的混叠、阴影痤疮和漏光。图形学环境光遮蔽Ambient Occlusion环境光遮蔽 (AO) 是余弦加权后半球上未被遮挡的比例,用来在光照缺乏方向变化时仍给出形状线索(缝隙变暗)。它由 Landis 在 ILM 为《珍珠港》开发,可离线烘焙,也可在物体空间或屏幕空间动态计算(SSAO、HBAO、GTAO 等)。AO 适合漫反射和平滑环境光,不适合点光源或小面光源的可见性(RTR4 11.3 节)。游戏美术光的品质:软硬、衰减与 ThrowQualities of Light现以第 3 版为准。 第 1 版独立 Ch5「Qualities of Light」;第 3 版把品质讨论拆入 Ch1(识别光源)、Ch2(衰减/cookie)、Ch4(throw patterns)等。本页汇总美术向「光长什么样」:软硬、衰减、投射图案(gobo/cookie/throw)。游戏美术CG 与实拍合成要点CG & Live-Action Integration压缩 Dinur Part 4 的 Ch15–17:2D 元素接景(色匹配、边缘、light wrap)、CG 元素用 render passes / deep 改善、以及 2D 补光与画影。游戏过场/UI 宣传图/引擎拍屏合成同样适用;实时玩法关卡则以原则检查清单为主。与 Birn 分层渲染与合成 Pass 互补。游戏开发 · UE5虚拟阴影贴图Virtual Shadow Maps虚拟阴影贴图 (Virtual Shadow Maps, VSM) 是 UE5 默认的阴影方法:概念上就是分辨率极高(虚拟 16k×16k)的阴影贴图,切成 128×128 的页 (Page),只为屏幕上需要着色的像素分配和渲染页,并跨帧缓存;方向光用 clipmap 覆盖大范围,软阴影由阴影贴图光线追踪 (Shadow Map Ray Tracing, SMRT) 生成。它为 Nanite 设计,与 Nanite 一起使用时最高效。