泛光 (Bloom)
泛光效果会产生从图像明亮区域边界向外延伸的光线条纹。这种效果给人的感觉是极其明亮的光线压制住了摄像机。
高清渲染管线 (High Definition Render Pipeline, HDRP) 中的泛光具有能量守恒特性。这意味着你必须为光照和材质使用正确的物理值,才能使其正常工作。如需了解 HDRP 使用的光单位,请参阅“物理光单位”文档。
泛光效果还具有镜头脏污 (Lens Dirt) 功能,该功能可用于应用全屏污迹或灰尘层来衍射泛光效果。
使用泛光
泛光使用体积 (Volume) 框架,因此若要启用和修改泛光属性,必须将泛光覆盖添加到场景中的体积。要向体积添加泛光,请执行以下操作:
- 在 Scene 视图或 Hierarchy 视图中,选择一个包含 Volume 组件的游戏对象以在 Inspector 中查看该游戏对象。
- 在 Inspector 中,导航到 Add Override > Post-processing,然后单击 Bloom。HDRP 现在会将泛光应用于此体积所影响的任何摄像机。
泛光包含必须手动显示的更多选项。
API
要在运行时访问和控制此覆盖,请使用体积脚本 API。由于体积系统的工作原理,可以使用与标准 Unity 组件不同的方式来编辑属性。也需要注意其他细微差别,例如每个属性都有一个 overrideState。这个参数向体积系统指示是使用你设置的属性值,还是使用存储在体积配置文件中的默认值。有关如何正确使用 API 的信息,请参阅体积脚本 API。
属性
Bloom
属性 | 描述 |
---|---|
Threshold | 使用滑动条设置亮度级别,低于此级别的像素将被滤除。该值以伽马空间表示。大于 0 的值将违反能量守恒规则。 |
Intensity | 使用滑动条设置泛光过滤器的强度。 |
Scatter | 使用滑动条更改模糊效果的程度。 |
Tint | 使用拾色器来选择泛光效果要着色成的颜色。 |
Lens Dirt
属性 | 描述 |
---|---|
Texture | 分配一个纹理以将脏污(例如污迹或灰尘)应用于镜头。 |
Intensity | 设置镜头脏污效果的强度。 |
Advanced Tweaks
属性 | 描述 |
---|---|
Resolution | 使用下拉选单设置 HDRP 处理泛光效果的分辨率。如果目标游戏主机使用高分辨率(例如 4k),请选择 Quarter,因为该选项占用的资源较少。 • Quarter:使用四分之一的屏幕分辨率。 • Half:使用一半的屏幕分辨率。 仅当启用更多选项时,才显示此属性。 |
High Quality Prefiltering | 启用此复选框可以使 HDRP 在预过滤通道中使用 13 个样本而不是 4 个样本。这会增加泛光效果的资源消耗量,但会减少像太阳这样的明亮小对象的闪烁。 仅当启用更多选项时,才显示此属性。 |
High Quality Filtering | 启用此复选框可以使 HDRP 使用双三次过滤而不是双线性过滤。这会增加泛光效果的资源消耗量,但会带来更平滑的视觉效果。 仅当启用更多选项时,才显示此属性。 |
Anamorphic | 启用此复选框可以使泛光效果考虑摄像机的 Anamorphism 属性。这会水平或垂直拉伸泛光,就像在变形传感器上那样。 仅当启用更多选项时,才显示此属性。 |
详细信息
从 2019.3 开始,HDRP 提供了可用于自定义此效果的查找纹理。这些查找纹理用于 Lens Dirt 部分中的 Texture 属性。要将这些纹理添加到您的 Unity 项目中,必须使用 Package Manager:
- 在顶部菜单中,选择 Window > Package Manager。
- 在 Packages 窗口中,选择 High Definition RP。
- 在 High Definition RP 部分中,导航到 Additional Post-processing Data,然后单击旁边的 Import into Project。
- 与泛光相关的纹理位于 Lens Dirt 文件夹中,因此,如果只需要泛光的查找纹理,则仅应该导入 Lens Dirt 文件夹的内容。