![Unity 3D特效设计必修课](https://wfqqreader-1252317822.image.myqcloud.com/cover/765/26542765/b_26542765.jpg)
1.1.9 设定天空盒
首次打开Unity 5.3.0时,会发现默认Scene(场景视图)和Game(游戏视图)中带有一个蓝天的背景效果。如果仔细观察,甚至还可以在天边找到一个白色的太阳,我们管这个巨大的世界场景叫作Skybox(天空盒)。
那么应该如何去除天空盒?如何创建天空盒呢?
1.1.9.1 去除天空盒
在制作特效时,常常需要用到纯色背景来进行效果展示(并不希望有天空盒效果),那么要怎样才能去除天空盒呢?
Step 01首先需要单击菜单栏Window→Lighting(照明),在Lighting窗口中可以看到Skybox(天空盒)选项。接着单击后面的圆形符号,在Select Material(选择材质)窗口中选择None(全不)即可,操作完成后天空盒效果就不见了,如图1-50所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P34_2.jpg?sign=1739412557-VVWsLvMD5vn0Fu6mBkwed55Rx0Lgk9iS-0-d06cc7d9643e3502189fa2251f99fcf5)
图1-50
天空盒去除后,发现摄像机默认背景色为蓝色,那么要如何修改摄像机的背景色呢?
Step 02首先在Hierarchy(层级视图)中单击摄像机,然后在Inspector(检测视图)中查看摄像机的属性,如图1-51所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P34_3.jpg?sign=1739412557-VIN2igp47rD9x3xvHcbwHslSTh1zUziM-0-cef144444be15619953c8f866e53c2bd)
图1-51
摄像机的相关属性如表1-11所示。
表1-11
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-T34_1.jpg?sign=1739412557-K5U2ROrQZAh18WSz1nQnsSiZQLvJjqpa-0-0e2c7a996c5669aca81d731f76406d72)
Step 03接着单击摄像机属性中的Background(背景色),就可以将默认的摄像机蓝色背景改为任意颜色了。
注意
(1)旧版本Unity(如Unity 4.6.0之前)中初始场景中默认并没有天空盒。
(2)除此之外,还可以通过单击场景视图上方,如图1-52中红框位置,屏蔽掉天空盒的显示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P35_2.jpg?sign=1739412557-oFsqk7HRw5DPhbVjO7cY6gD3R5fMM4TP-0-b96a4ef907f0a21f7271789ba09e9ecd)
图1-52
1.1.9.2 创建天空盒
Step 01首先在工程视图任意路径空白位置鼠标右击Create→Material(创建→材质)创建一个材质球,如图1-53所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P35_3.jpg?sign=1739412557-BfIm0yeHWxWeUBNWmUyxrSRWKvC54D21-0-1157f1c394e0b6678ad83b6768618893)
图1-53
Step 02创建完成后,选中材质球并在Inspector(检测视图)中查看其属性,将材质球中的Shader(着色器)类型修改为Skybox/6 Sided(天空盒/6号),如图1-54所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P35_5.jpg?sign=1739412557-TlKYJ7DW6D6BAkoVGYypyxp410jK7f8G-0-694812726219629751d627bfe0e66c0c)
图1-54
Step 03然后按照顺序给材质球附加上六张无缝拼接的全景纹理,如图1-55所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P36_1.jpg?sign=1739412557-l83A6xxzPkhJaNrX5zBFDIK3I4oKcchw-0-6d1113242529ed172568e0f577ed3f33)
图1-55
Step 04之后的操作与前面类似,单击菜单栏Window→Lighting(照明),在Lighting(照明)窗口中可以看到Skybox(天空盒)选项,如图1-56所示。单击Skybox(天空盒)后面的圆点符号,在Select Material(选材)窗口中选择之前所创建的天空盒材质球即可。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P36_2.jpg?sign=1739412557-b68X0njEdKrVjsgZ0h0iWBtq2hdUpIms-0-f887ead8ea640138452e8349543c5683)
图1-56
天空盒原理如下。
Unity中的天空盒使用了一种特殊算法,它可以笼罩在整个游戏场景外,并根据材质球中指定的纹理模拟出远景、天空、太阳等效果,使游戏场景更加真实。
可以将天空盒理解为一个无限大的正方体,该正方体覆盖整个游戏世界。由于正方体有六个面,所以需要赋予它六张无缝贴图。
演示效果如图1-57所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P36_3.jpg?sign=1739412557-WnJiXePZCxSLguBCKZXVlGMjoi9lApWy-0-b73f80b6985a1cd8b014c3252904a6a5)
图1-57
将天空盒拆解开,可以看出它由六个面共同组成,如图1-58所示。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P36_4.jpg?sign=1739412557-4kITYOXfbdCnkMDElHIgtZnLgdCgCrzw-0-dc8201ed3f2e2f0771031a409c810e23)
图1-58
注意
(1)除此之外,在一些游戏引擎中还存在“天空球/环境球”等,它们原理相同,只是把图像的载体变为球形。
(2)有关Shader(着色器)的知识,会在本书第2章“Shader(着色器)材质”中进行详细讲解。
(3)附赠资源中提供了Skybox(天空盒)资源包。
(4)旧版本Unity中默认内置了一些天空盒资源,例如在Unity 4.6.0中,可以通过菜单Assets→Import Package→Skyboxes(资源→自定义包→天空盒)调入内置的天空盒效果。
Unity视图颜色设置方法:通过菜单命令Edit→Preferences(编辑→首选项)自定义Unity场景视图背景颜色、轴向颜色、网格颜色等。
如图1-59所示,为Unity Preferences界面。
![](https://epubservercos.yuewen.com/843459/15056703305212106/epubprivate/OEBPS/Images/Figure-P37_1.jpg?sign=1739412557-T0VxxUbTJVHaGC4YV4QwNt7x6ZeJfC0a-0-d1e5a1923c3ca38c755f4f0e43b31e0a)
图1-59
可以在Colors(颜色)选项中自定义各项颜色值,也可以通过单击界面下方的Use Defaults(恢复预设值)(红框位置)按钮使各项颜色恢复到默认初始状态,由于该功能并不常用,所以就不做详细讲解了。
注意
需要事先取消Skybox(天空盒),才能够修改Background(场景背景色)。