Unity 提供了多个天空盒着色器供您使用。每个着色器使用一组不同的属性和生成技术。每个着色器都属于以下两类之一:
注意:高清渲染管线 (HDRP) 不支持以上任何着色器,而是包含多个天空生成解决方案。
从一个或多个纹理生成一个天空盒。源纹理代表各个方向的背景视图。此类别中的天空盒着色器有:
此天空盒着色器从六个单独纹理生成一个天空盒。每个纹理代表沿特定世界轴的天空视图。为了方便说明,可以将场景视为位于立方体内。每个纹理代表立方体的一个内表面,所有六个纹理结合在一起形成一个无缝环境。
要创建一个** 6 面**天空盒,您需要六个单独纹理,这些纹理组合在一起可映射到如下网络布局:
为生成最佳的环境光照,纹理应使用高动态范围 (HDR)。
此天空盒着色器从单个立方体贴图资源 (Cubemap Asset) 生成一个天空盒。此立方体贴图由六个正方形纹理组成,代表全方位的整个天空视图。
为了生成天空盒,全景着色器 (Panoramic Shader) 将单个纹理以球形包裹住场景。
如需了解如何创建使用此天空盒着色器的材质,以及有关如何在场景中渲染天空盒的详细信息,请参阅使用天空盒。
要创建全景天空盒,需要一个使用纬度/经度(圆柱形)贴图的 2D 纹理,如下所示:
要确保纹理为 2D 纹理,请执行以下操作:
为生成最佳的环境光照,纹理应使用高动态范围 (HDR)。
程序化天空盒着色器不需要任何输入纹理,而是仅从 Material Inspector 中设置的属性生成天空盒。
如果选择在天空盒中渲染太阳圆盘(请参阅属性 (Properties) 中的太阳 (Sun)),此着色器使用激活状态光源 (Light) 的旋转将太阳定位在天空盒中。要查找激活状态的光源,请执行以下操作:
通过使用此行为可以创建一个简单的昼夜循环。为此,请围绕特定轴连续旋转主方向光。