在 Unity 中,天空盒是使用天空盒着色器的一种材质。有关可用的天空盒着色器的信息,请参阅天空盒着色器。
功能 | 内置渲染管线 | 通用渲染管线 (URP) | 高清渲染管线 (HDRP) |
---|---|---|---|
天空盒 | 是 (1) | 是 (1) | 否 (2) |
注意:
1.内置渲染管线和通用渲染管线 (URP) 都专门使用天空盒来渲染天空。这些天空盒是使用天空盒着色器的材质。 2.高清渲染管线 (HDRP) 不支持天空盒材质,而是包含多个天空生成解决方案。
要创建新的天空盒材质,请执行以下操作:
1.从菜单栏中,单击 Assets > Create > Material。 2.在 Shader 下拉选单中,单击 Skybox,然后单击要使用的天空盒着色器。 3.现在可以填写材质的属性以设置天空盒。材质的可用属性取决于材质使用的天空盒着色器。
注意:每个天空盒着色器都有自己的一组必备纹理,这些纹理的数量和格式有所不同。有关特定天空盒着色器所需的纹理的信息,请参阅该天空盒着色器的文档。在天空盒着色器页面上可以找到天空盒着色器及其文档的列表。
创建天空盒材质后,可以在场景中渲染该材质。为此需要执行以下操作:
1.从菜单栏中,单击 Window > Rendering > Lighting Settings。 2.在随后出现的窗口中,单击 Scene 选项卡。 3.将天空盒材质分配给 Skybox Material 属性。
这样会在场景内每个摄像机的背景中绘制天空盒。如果只想为特定摄像机绘制天空盒,请参阅为特定摄像机绘制天空盒。
创建天空盒材质后,Unity 可将其用于在场景中产生环境光照。为了让 Unity 这样做,请执行此操作:
1.打开 Lighting 窗口(菜单:Window > Rendering > Lighting Settings)。 2.将所选天空盒分配给 Skybox Material 属性。 3.单击 Source 下拉选单,然后从列表中单击 Skybox。
还可以指定 Unity 更新环境光照的时间。为此,请更改 Ambient Mode。两个值如下:
如果只想在特定摄像机的背景中绘制天空盒,请使用 Skybox 组件。将此组件附加到带有摄像机的游戏对象时,它会覆盖摄像机绘制的天空盒。要附加并设置 Skybox 组件,请执行以下操作:
1.选择场景中的一个摄像机,然后在 Inspector 窗口中进行查看。 2.单击 Add Component > Rendering > Skybox。 3.在 Skybox 组件中,将天空盒材质分配给 Custom Skybox 属性。
如果天空盒中包含太阳、月亮或其他光源,请设置一个方向光来指向该光源的相同方向。这就好像天空盒中的光源在场景中产生阴影一样。如果场景中有多个方向光,可以选择天空盒使用的方向光。为此需要执行以下操作:
1.从菜单栏中,单击 Window > Rendering > Lighting Settings。 2.单击 Scene 选项卡。 3.将需要使用的方向光分配给 Sun Source 属性。
如果希望场景中有雾,请让雾的颜色与天空盒颜色匹配。这样可以使雾与场景天空的颜色混合。为此需要执行以下操作:
1.从菜单栏中,单击 Window > Rendering > Lighting Settings。 2.单击 Scene 选项卡。 3.在 Other Settings 部分中,选中 Fog 复选框。 4.将 Color 属性设置为适合天空盒的颜色。为此,可以使用墨水滴管工具从场景中选择一种颜色。