版本:Unity 6 (6000.0)
语言:英语
自定义着色器在内置渲染管线中贡献光照贴图数据的方式
在内置渲染管线中配置游戏对象以采样更多光照探针

在内置渲染管线中配置阴影分辨率

为了计算阴影贴图的分辨率,Unity

  1. 确定灯光可以照亮的屏幕视图区域。对于方向光,整个屏幕都可以被照亮。对于聚光灯和点光源,该区域是灯光范围形状在屏幕上的投影:点光源为球体,聚光灯为锥体。投影形状在屏幕上具有宽度和高度(以像素为单位);然后取这两个值中较大的那个。此值称为灯光的像素计算机图像中的最小单位。像素大小取决于屏幕分辨率。每个屏幕像素都会计算像素灯光。 更多信息
    参见 词汇表
    大小。

  2. 确定阴影质量倍增器。Unity 使用阴影分辨率设置为此,该设置在质量设置窗口中设置。质量设置对应于以下值
    • 超高:1.0
    • 高:0.5
    • 中:0.25
    • 低:0.125
  3. 执行以下计算,然后将结果限制在最大大小

灯光类型 公式 最大分辨率(以像素为单位)
方向光 NextPowerOfTwo (像素大小 * 阴影质量倍增器 * 3.8) 当阴影分辨率为超高质量时,或当 GPU 拥有 512MB 或更多 RAM 时为 4096 x 4096,否则为 2048 x 2048。
聚光灯 NextPowerOfTwo (像素大小 * 阴影质量倍增器 * 2.0) 如果 GPU 拥有 512MB 或更多 RAM,则为 2048 x 2048,否则为 1024 x 1024。
点光源 NextPowerOfTwo (像素大小 * 阴影质量倍增器 * 1.0) 如果 GPU 拥有 512MB 或更多 RAM,则为 1024 x 1024,否则为 512 x 512。

覆盖阴影贴图分辨率

在内置渲染管线一系列将场景内容渲染到屏幕上的操作。Unity 允许您选择预制渲染管线或编写自己的渲染管线。 更多信息
参见 词汇表
中,您可以通过将Light.shadowCustomResolution属性设置为大于 0 的值来设置灯光阴影贴图的分辨率。当此值大于 0 时,Unity 会对所有灯光类型执行以下计算

NextPowerOfTwo (shadowCustomResolution)

然后,它根据灯光类型和硬件限制最大分辨率,如上表所示。

其他资源

  • 阴影一个 UI 组件,可为图形组件(如文本或图像)添加简单的轮廓效果。它必须与图形组件位于同一个游戏对象上。 更多信息
    参见 词汇表
自定义着色器在内置渲染管线中贡献光照贴图数据的方式
在内置渲染管线中配置游戏对象以采样更多光照探针