视觉环境 (Visual Environment)
视觉环境体积 (Visual Environment Volume) 组件覆盖可以指定 HDRP 在体积 (Volume) 中渲染的天空类型 (Sky Type)。
使用视觉环境
视觉环境使用体积 (Volume) 框架,因此若要启用和修改视觉环境属性,必须将视觉环境覆盖添加到场景中的体积。
在创建 Scene Settings 游戏对象(菜单:GameObject > Volumes > Sky and Fog Volume)时,视觉环境覆盖是默认设置。还可以手动向体积添加视觉环境覆盖。要向体积添加视觉环境,请执行以下操作:
- 在 Scene 视图或 Hierarchy 视图中,选择一个包含 Volume 组件的游戏对象以在 Inspector 中查看该游戏对象。
- 在 Inspector 中,导航到 Add Override,然后单击 Visual Environment。现在可以使用视觉环境覆盖来控制此体积的天空和雾效。
API
要在运行时访问和控制此覆盖,请使用体积脚本 API。由于体积系统的工作原理,可以使用与标准 Unity 组件不同的方式来编辑属性。也需要注意其他细微差别,例如每个属性都有一个 overrideState。这个参数向体积系统指示是使用你设置的属性值,还是使用存储在体积配置文件中的默认值。有关如何正确使用 API 的信息,请参阅体积脚本 API。
属性
要编辑任何 Volume 组件覆盖中的属性,请启用属性左侧的复选框。这也告诉 HDRP 使用您为 Volume 组件指定的属性值而不是使用默认值。如果禁用该复选框,HDRP 将忽略您设置的属性,并改用该属性在 Volume 组件中的默认值。
Sky
属性 | 描述 |
---|---|
Type | 使用下拉选单选择当此体积影响体积内的摄像机时 HDRP 渲染的天空类型。创建自定义天空时,此列表会自动更新。 • None:HDRP 不会为此体积中的摄像机渲染天空。 • Gradient Sky:使用三个单独的颜色区域渲染天空的顶部、中部和底部。HDRP 使用 Gradient Sky 的 Gradient Diffusion 属性控制这些颜色区域的大小。 • HDRI Sky:使用立方体贴图纹理来表示整个天空。 •Physically Based Sky:模拟具有两部分大气的球形行星的天空,其中大气的密度会相对于高度呈指数递减。 • Procedural Sky:根据 Sky Tint、Ground Color 和 Sun Size 等属性生成天空。HDRP 在 2019.3 中弃用了程序化天空 (Procedural Sky),并将其替换为基于物理的天空 (Physically Based Sky)。要在 Unity 2019.3 或更高版本中将程序化天空用于 HDRP 项目,请遵循从 2019.2 升级到 2019.3 指南中的说明。 请注意:对于不是 None 的任何类型选项,还需要添加与所选类型匹配的 Volume 组件。 |
Ambient Mode | 使用下拉选单选择此体积用于处理环境光的模式。 • Static:环境光来自分配给 Lighting 窗口中 Static Lighting Sky 属性的烘焙天空。该光源影响实时和烘焙的全局光照。有关如何设置环境光照的信息,请参阅“环境光照”文档。 • Dynamic:环境光来自此覆盖的 Sky > Type 属性中设置的天空。这意味着环境光可以实时变化,具体取决于影响摄像机的当前体积。如果使用烘焙全局光照,则对环境光照的更改仅会影响使用环境探针 (Ambient Probe) 专门照亮的游戏对象。如果使用实时全局光照,则对环境光照的更改会同时影响光照贴图和环境探针。 |
更改天空设置
设置 Sky Type 后,如果要覆盖默认设置,则需要在 Volume 上为它们创建覆盖。例如,如果将 Sky Type 设置为 Gradient Sky,请单击 Volume 上的 Add component overrides 并添加 Gradient Sky 覆盖。然后可以禁用或删除 Procedural Sky 覆盖,因为 Visual Environment 会将其忽略并改用 Gradient Sky。要禁用覆盖,请禁用 Procedural Sky 标题左侧的复选框。要删除覆盖,请单击标题右侧的下拉菜单,然后选择 Remove。
在 Gradient Sky 覆盖本身上,可以启用每个属性旁边的复选框以使用你自己的值覆盖该属性。例如,启用 Middle 属性旁边的复选框,并使用拾色器将颜色更改为粉红色。