陈栋梁

场景美术:天空球全景图与高度雾使用教程


本教程主要讲解天空球中的新增功能——全景图及高度雾的使用。如对引擎中天空球的基础功能不了解,建议先阅读《场景美术:天空球及其贴图制作教程》

利用全景图制作天空球

过去我们是使用六面无缝Cube贴图来制作天空盒的。但是要在Photoshop中直接处理出6张无缝贴图比较麻烦,通常还需要借助3ds max或者其他工具进行制作。现在引擎新增了对全景图的支持,我们可以直接利用一张全景图制作天空球。
首先,我们需要准备全景图素材。在搜索引擎中搜索“360°全景图”即可找到不少素材:
image

若要自己制作全景图,则有两种方法:
1、使用专业的拍摄设备实地拍摄得到;
2、创建模型并渲染得到。
更多细节可以参看这里这里

需要注意的是,将全景图导入引擎之前需要先确保其宽和高均为2的正整数次幂,而宽高比则以2:1为宜(如4096X2048,2048X1024,1024X512等)。

准备好全景图后,便可以开始创建天空球了。打开Away Builder,新建一个SkyBox:
2
3

默认情况下,SkyBox的映射方式是Cube,我们将其设置为2D,并新建贴图,将我们的全景图导入:
4
5

将SkyBox属性面版中的Start Angle和End Angle分别设置为0及180,这样一个天空球就基本出来了:
6
7

使用全景图制作的天空球会存在一个问题,就是顶部及底部容易产生放射状接缝:
8
9

这是因为,天空球实质是引擎创建的一个多边形球体,它的拓扑结构和UV排布是这样的:
10
11

可见顶部及底部的UV都是一排锯齿,这样是无法满满地覆盖住全景图的上下两端的。解决办法是增加球体的垂直段数,使得锯齿的开口尽可能地窄,这样接缝便不会太明显。如遇到顶部或底部贴图被扭曲的情况,可适当地增加水平段数,这样可使映射更准确。
12
13

但段数并非越高越好,一个垂直及水平分段均为100的球体就会有一万个面,这会占用不少的资源。

为天空球添加高度雾

接下来讲解如何为天空球添加雾效。我们之所以将其命名为“高度雾”,是从使用习惯出发的,它并不是严格意义上的高度雾。在这里,“高度雾”模拟的是远处的大气散射现象。
14

要使用雾效,需要先勾选SkyBox属性面版中的Use Fog。Fog Ratio控制的是雾的强度(不透明度),Fog Color控制的是雾的颜色。Fog MinHeight及Fog MaxHeight分别指雾在垂直方向上的起点及终点,也就是高度。两者的取值范围均为[-1000, 1000],0对应着地平线的位置。通常Fog MinHeight要小于Fog MaxHeight。

15

PS:

① 本文为天空球新增功能——全景图及高度雾的使用教程;
② 如果有疑问或者错误不足之处,请和TA组联系!欢迎交流,我们会及时补充纠正!