Version: 1.4
语言 : 中文
虚拟阴影贴图
阴影

如何使用虚拟阴影贴图

团结引擎的虚拟几何体系统,是实现虚拟阴影贴图的基础。首先,您需要创建HDRP项目,并且手动开启项目的虚拟几何体功能,具体参考如何使用虚拟几何体。否则,无法正确开启虚拟阴影贴图。

当开启虚拟几何体功能后,通过选择Edit -> Project Settings -> Quality -> HDRP,找到并开启Virtual Shadow Map下拉框的Globally Enabled选项。此时,虚拟阴影贴图功能就被开启了。

虚拟阴影贴图选项
虚拟阴影贴图选项
选项 描述
Globally Enabled 启用虚拟阴影贴图功能
Cache Enabled 启用缓存功能,重用已有的物理页,只渲染当前帧需要更新的页
Directional Light Cache Disabled 禁用平行光的缓存功能,每帧重新渲染平行光的阴影深度
Separate Dynamic and Static Pages 开启后,对动态物体和静态物体分别渲染阴影,有助于减少对后者的阴影渲染操作
Clipmap Min Level 指定平行光Clipmap的最低级别
Clipmap Max Level 指定平行光Clipmap的最高级别
Distant Light Mode 用于控制局部光的阴影精度。OFF:所有局部光都使用高精度阴影;ON:远处的局部光,使用低精度阴影(128 x 128);ALWAYS:所有局部光都使用低精度阴影

补充:

  • 平行光使用Clipmap来扩展高质量阴影的覆盖范围。每个Clipmap级别拥有单独的16k x 16k虚拟阴影贴图,覆盖半径是前一级别的两倍。
  • 局部光包括点光源和聚光灯。聚光灯使用一张16k x 16k虚拟阴影贴图的8个Mipmap级别来管理阴影的LOD层级,其中级别0包含128 x 128个页,其他级别的页数是前一级别的一半。类似地,点光源使用6张16k x 16k虚拟阴影贴图的Mipmap。

可视化功能

开启虚拟阴影贴图后,您可以通过Window -> Analysis -> Rendering Debugger -> GDRP -> Virtual shadow map Visualization下拉框,来启用虚拟阴影贴图的可视化功能。

虚拟阴影贴图包含以下可视化选项:

选项 描述
None 无任何可视化效果
ClipmapLevelOrMipLevel 显示每个位置的阴影精度层级,平行光对应ClipmapLevel,局部光对应MipLevel
RequestPages 显示每个位置请求的虚拟页
CachedPages 显示每个位置的虚拟页的缓存情况。绿色:完全缓存;蓝色:只有静态部分缓存;红色:未缓存
ShadowFactor 显示每个位置的阴影系数

下图展示了RequestPages的可视化效果。

RequestPages
RequestPages
虚拟阴影贴图
阴影