- Unity应用开发实战案例
- 程明智 陈春铁编著
- 3057字
- 2020-08-28 00:09:03
1.3 实现过程
1.3.1 Unity引擎安装说明
登录Unity3D官网(www.unity3d.com),单击屏幕右上角“Get Unity”,选择免费试用版本,勾选选择框,并单击下方“Download Installer for Windows”进行下载。下载过程持续时间较长,请耐心等待。安装过程如图1-1所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0012-0001.jpg?sign=1739610874-nkDFX11tzCPPeOEObLjBc7kJ7A5JuKh8-0-04b5c12fdf421e6b65f7dcb97e7d0606)
图1-1 安装过程
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0013-0002.jpg?sign=1739610874-ctMVK2vmUojKUEgdofxpsagoPJRFr5DA-0-0b180caacc2e2a05e4c8e74060cff29b)
图1-1 安装过程(续)
1.3.2 创建工程文件
打开 Unity,单击“New”创建新的工程文件。创建工程文件页面如图1-2所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0013-0003.jpg?sign=1739610874-zhc6NjoajHL7u6U5QArcateoTE0MrZYt-0-86e66ffff069775321aebbf377148765)
图1-2 创建工程文件页面
1.3.3 新建场景
新建场景并命名为changjing(注意,Unity文件名称中不能出现中文),选择工程文件存储的路径,单击“Creat project”按钮完成创建。新建场景页面如图1-3所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0014-0004.jpg?sign=1739610874-a0tsES0ZkzQUU0W2TD7ckDnspI702Lez-0-0a2baa76f10f9b6c30f82efcb8b7875f)
图1-3 新建场景页面
1.3.4 创建地形
在Hierarchy面板(层次视图)中依次选择“Create”→“3D Object”→“Terrain”选项创建地形(Terrain),如图1-4所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0014-0005.jpg?sign=1739610874-GM7aexHsjlloQnqa2xSRDh9E0oaINgWE-0-50ad86df77c533a9d064f24f27f6e7bd)
图1-4 创建地形
1.3.5 地形大小设置
创建地形后,可对地形进行大小设置。单击 Inspector 面板(属性视图)中Terrain选项下的第7个地形工具按钮,将其长、宽、高分别设置为500、500、600。地形属性页面如图1-5所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0015-0006.jpg?sign=1739610874-YKmqKh03HCvbUt5QXhO6eAqUVN8RcowF-0-8b2d572bc8ca30115621ee2701d36966)
图1-5 地形属性页面
1.3.6 创建山和湖
在设置完地形大小后,应进行地形的高度设置。Terrain选项下的第2个地形工具按钮是绘制高度工具,可确定湖的深度。单击这个按钮后,设置其Height(地形与最低处相差的高度)值为200,单击“Flatten”按钮,如图1-6所示设置地形高度。之后,选择Brushes选项下的第1个地形工具建湖,按下键盘“Shift”键,同时在地形上单击鼠标左键,就可以使地形下陷。创建好地形,即可进行地形样式预览,如图1-7所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0015-0007.jpg?sign=1739610874-rRS46KkLoam7swB02ONsUpy1PkHilaf7-0-d3e415a50ee47251dbd518e33c3eeedd)
图1-6 设置地形高度
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0016-0008.jpg?sign=1739610874-dnjf4qzBnPNJ5BatsTaFtAjP3V9RteZz-0-3d152f73a536ac4e6e0bc597bf27fc47)
图1-7 地形样式预览
1.3.7 添加底层贴图
使用Terrain选项下的第4个地形工具进行贴图,可以添加草地、山峰和小路。在Project面板(工程视图)下,导入资源包中的Environment文件,单击“Import”按钮完成资源导入。环境资源包路径如图1-8所示,环境资源包导入如图1-9所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0016-0009.jpg?sign=1739610874-FsYDK0f9RB1K4SWJrq8o6W9ky8HKfrLd-0-6404c7b1b46f0104e138eea3765e6eaf)
图1-8 环境资源包路径
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0017-0010.jpg?sign=1739610874-PYKEPeMWiuoEdxrOUrZ7mdwD4Me6qWb2-0-b36a38b8fa2c8ee5a12eac6e01879187)
图1-9 环境资源包导入
1.3.8 添加草地、山峰及小路的贴图
选中Terrain选项下第4个地形工具添加草地、山峰及小路的贴图。依次选择“Edit Textures…”→“Add Terrain Texture”→“Select”,如图1-10所示创建地形贴图。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0017-0011.jpg?sign=1739610874-SIEUCa30bbsDebRe5tHYTr9N5ZfVWY3N-0-292771a81016e9799f91491e808de5f6)
图1-10 创建地形贴图
地形贴图文件如图1-11所示,从中选择3个贴图添加到 Texture 中。单击“Add”按钮添加地形贴图,如图1-12所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0018-0012.jpg?sign=1739610874-AqzoLSn92Syk8GO6ydrMa0uY73L0ew60-0-a9f166b05f999e5423e243a986353429)
图1-11 地形贴图文件
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0018-0013.jpg?sign=1739610874-EdZU3GJjhH2AKvavKodj11JWUbx8nGIu-0-188bfac416447eb695672c1c39e0b1a7)
图1-12 添加地形贴图
1.3.9 添加树木
选中Terrain选项下的第5个地形工具,依次选择“Edit Trees…”→“Add Tree”。创建树木如图1-13所示,寻找树木模型如图1-14所示,树木模型如图1-15所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0019-0014.jpg?sign=1739610874-DDDiA36l0gloJsaClM4dp10inHisbM85-0-0d1cb2d570a9d3196480b0b3c13b3a2b)
图1-13 创建树木
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0019-0015.jpg?sign=1739610874-zYhxgTcrSD8ggF2Lv5hLuXyCLqMBFq9n-0-0d779ee64b48baf9a577f16e281fa1f9)
图1-14 寻找树木模型
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0019-0016.jpg?sign=1739610874-0q0vT4eguJk9Yt7FebPrViIxAHorXfOA-0-a692aaad6216978f4520f0337f75c61c)
图1-15 树木模型
选定树木模型后,还可设置一些具体的参数,包括树木种类选择、弯曲度设置、树木地形大小设置和密度设置(注意,若相机距离太远或者树木密度太小,可能会导致树的效果不明显)。地形效果图如图1-16所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0020-0017.jpg?sign=1739610874-8pWGbzasalHH8JUrzdy8OmyKelPTDaN9-0-b9b218422e5f09a5896916b91b3719c0)
图1-16 地形效果图
1.3.10 添加草丛
选择Terrain选项下的第6个地形工具,依次选择“Edit Details”→“Add Grass Texture”选项添加草丛,如图1-17所示。寻找草丛文件如图1-18所示,草丛贴图如图1-19所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0020-0018.jpg?sign=1739610874-k2VFHqutmYyvx7KKB3ChA4OwTCgTvHYO-0-c279a2789bb100b16c42bd5fe4cbb973)
图1-17 添加草丛
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0021-0019.jpg?sign=1739610874-2re8J0yrzNZPp7bFbHexoKfyDIbFvj1L-0-fcf122874101bc22ea7dddd49d679621)
图1-18 寻找草丛文件
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0021-0020.jpg?sign=1739610874-DyX8ydltRwcRnO1jRO4drV8If3Auh7Nj-0-8a15b6af56540ce4b4ad810fab2a0668)
图1-19 草丛贴图
添加草丛后,还可设置一些具体参数,包括草种类的选择,草的大小设置、密度设置(注意,如果相机距离太远或者草的密度太小,可能会导致草的效果不明显)。草的效果图如图1-20所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0022-0021.jpg?sign=1739610874-J5iyvrnqauW1c8Uf4U6cnjcy146u563W-0-b60083483aab0e55efaa6bfeae1c1329)
图1-20 草的效果图
1.3.11 添加湖水
依次选择Project面板下“Water”→“Water4”→“Prefabs”→“Water4Simple”选项添加湖水。Water4Simple位置如图1-21所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0022-0022.jpg?sign=1739610874-cUdxR7sRMeWhimv5feByNakJNeFnipxp-0-4e88218ece441bee61f46b3b527b61e5)
图1-21 Water4Simple位置
将Water4Simple选项(水面对象)拖曳至场景视图中,利用缩放工具将其调整到合适的大小,如图1-22所示添加湖水并修改大小。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0023-0023.jpg?sign=1739610874-si5TVLYMlKcdnO2wskrJBIe6mDkdXscP-0-e701800bf7eb815de7d471b4e0086b9c)
图1-22 添加湖水并修改大小
1.3.12 添加天空盒
用鼠标右键单击“Assets”,依次选择“Import Package”→“Custom Package…”选项,选择 Skybox 文件夹中的 Skyboxes_18文件,导入所需的资源文件。如图1-23所示添加自定义资源包(Custom Package),如图1-24所示导入资源文件。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0023-0024.jpg?sign=1739610874-e2zhnphIhOFXMLCYXFI1McRF2cAuVTsE-0-2b3952ba880200c7a4dc3e4cd5ef298d)
图1-23 添加自定义资源包(Custom Package)
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0024-0025.jpg?sign=1739610874-ygh7PHzYHBW2b5gZDIkGwpTmX9z87gWj-0-2cf8131fe77064866f6dabd3a0d1ce2a)
图1-24 导入资源文件
为主相机添加天空盒(Skybox)效果,在Inspector面板下搜索“Skybox”并单击“Add Component”按钮,如图1-25所示添加天空盒效果。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0024-0026.jpg?sign=1739610874-WevPunwpfVjveIBGGHZcXm0b731Aum7u-0-27186c2106ccaedc2675eabc27431cf3)
图1-25 添加天空盒效果
将资源包中的Skybox3拖曳至场景相机(Camera)下的Custom Skybox参数框中,如图1-26所示置入天空盒贴图。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0025-0027.jpg?sign=1739610874-bLMyJlnXVydXmvlhoK6LLL6NbYIqb0dt-0-fd48f1ae029223c89090a6aa1a5b9ff9)
图1-26 置入天空盒贴图
1.3.13 添加外围海水
将Water4下的Water4Advanced拖曳入Scene窗口(场景视图)中相应的位置,利用“缩放”按钮将其缩放至合适大小,如图1-27所示添加外围海水。之后,可通过地形工具,修饰海岸线,如图1-28所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0025-0028.jpg?sign=1739610874-XjR51gwmtSspyus0Og1X4G1Zy9hHR4DU-0-f0bce8d78fadf37929ba529c9ad835ad)
图1-27 添加外围海水
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0026-0029.jpg?sign=1739610874-dEld5F5HVLtbTkvLRNJhzFyslMF7x6LB-0-9d6529e037c58efe807c2e88d3b1c656)
图1-28 修饰海岸线
1.3.14 添加第一人称视角
添加第一人称视角,首先需要导入Characters资源包,如图1-29所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0026-0030.jpg?sign=1739610874-zzgDPa7fgjYGjN0M2vM9sVQ3sLPzs71p-0-87ca07d5935be48e483ba66fe6851338)
图1-29 导入Characters资源包
选择Assets路径下“FirstPersonCharacter”→“Prefabs”→“RigidBodyFPSController”文件,将其拖曳到场景视图中,如图1-30所示添加第一人称视角。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0027-0031.jpg?sign=1739610874-QPaZTundAk6hKI8HPQaxeFSq5VOYC6sD-0-dedaeb6cdd810f9e78a71830725dd226)
图1-30 添加第一人称视角
因一个场景中只能存在一个相机,RigidBodyFPSController上面带有一个相机(Main Camera),原本的场景中也存在名为Main Camera的相机,所以将原本场景中的相机(Main Camera)关闭,只使用RigidBodyFPSController带有的相机。由于更换了相机,所以需要给RigidBodyFPSController带有的相机添加Skybox组件,具体添加方式如前面添加天空盒步骤所示。
1.3.15 添加不可见阻隔物
为了避免游戏人物掉入湖中或海中,则需创建阻隔物Cube,并将其放在湖的周围及岛屿的周围。如图1-31所示添加Cube,如图1-32所示修改Cube位置及大小。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0027-0032.jpg?sign=1739610874-ybsnGQsI9ArFz6ghzfrRLwKSRIek7XKe-0-c3d17249c738c7421c52dd55195de99f)
图1-31 添加Cube
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0028-0033.jpg?sign=1739610874-OSON4kCxBOtHO0mqvh10WC8MCWCUT56m-0-5678c9167ff9891d485fa323f516e501)
图1-32 修改Cube位置及大小
为了使墙面透明,取消勾选Cube的Inspector面板下的“Mesh Renderer”选项,即关闭Mesh Renderer,如图1-33所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0028-0034.jpg?sign=1739610874-CYYI0AXwiTr5kUbSTojK85exRN6GpAkN-0-c282238ebe249cfb107c1f179173f0c2)
图1-33 关闭Mesh Renderer
1.3.16 添加平行光的阴影
添加光晕效果,在 Project 面板中单击鼠标右键选择“Import Package”→“Effects”导入资源包;操作完成后在Assets目录下依次选择“Assets”→“Standard Assets”→“Effects”→“Light Flares”。
选择“Directional Light”对象,在Inspector面板中,将光晕文件50mmZoom拖曳至Flare参数框中;同时将阴影种类Shadow Type的参数选择为Soft Shadows,调节阴影的角度(按照时间来看,下午的阴影倾斜角度应该比较大)并设置其他参数。修改光晕颜色及亮度(Cookie是通过贴图来做阴影的,这里用的是实时阴影),如图1-34所示添加阴影。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0029-0035.jpg?sign=1739610874-13u3fi0oETI9OIAtPa5Tb2mK2s4JSvkx-0-afbad70fc6d17e4669ee3161633251ed)
图1-34 添加阴影
1.3.17 添加特效
添加特效的资源包需要从 AssetStore 中下载。在浏览器中输入网址https://www.assetstore.unity3d.com/#!/content/83913,选择“添加到我的资源”选项,选择“Open in Unity”选项,在 Scene 窗口旁会出现“Asset Store”,单击“Download”按钮,下载完成后,单击“Import”导入资源包。下载特效资源包如图1-35所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0030-0036.jpg?sign=1739610874-ZSYLv9QFCiwIdGB1kgjOJImy8jX1N24M-0-ae505abc3a39432e19b0a68f8116e70c)
图1-35 下载特效资源包
在 RigidBodyFPSController 带有的相机(MainCamera)上添加泛光特效(BloomAndFlares):调节相机对应的Inspector面板中Bloom参数,使画面色彩更逼真。
增加景深(Depth of Field):调节相机对应的Inspector面板中Depth of Field 下的参数,使其近处清晰,远处模糊,主要调整Focal Distance下的参数。
增加体积光(Sun Shafts):在3DMax中,体积光只能通过贴图实现,在Unity中可自行通过脚本实现,如图1-36所示添加特效。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0030-0037.jpg?sign=1739610874-zkdNAfjO2lxPOUi5P9m1AoRuVKSF9frD-0-5c25a1bc8bf21983ebdc3f1de0103ebd)
图1-36 添加特效
1.3.18 添加雾效
依次选择菜单“Window”→“Lighting”→“Other Settings”(雾效参数设置:开始距离和结束距离分别为100和300,选择雾的颜色,将雾效模式改变为线性模式),如图1-37所示添加雾效。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0031-0038.jpg?sign=1739610874-gBEjuqzh4JfQoIcHLSPfUlM2TD8LDxoK-0-1ff03e2edf0821e48e0d71e2dbbd8be4)
图1-37 添加雾效
在Scene窗口下的Effect下拉菜单中选择“Skybox”“Fog”选项,若不选,则Scene窗口中就没有天空盒或雾效,不便于编辑(图中未显示)。
1.3.19 添加风向
依次从Hierarchy面板中选择“Create”→“3D Object”→“Wind Zone”选项添加风向(草的默认状态为动态,树的默认状态为静态,添加风向后,树才变成动态的),如图1-38所示。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0031-0039.jpg?sign=1739610874-e5qB6VIXNRHMAWTwammFzuZyY0KWDuOo-0-86ca858dba13fce3c8cda9bd92b5a778)
图1-38 添加风向
1.3.20 地形等高贴图的导出
选择地形对象,在 Inspector 面板中,单击画笔列的第7个按钮,再单击“Export Raw…”按钮,出现“Export Height Map”窗口,选择16bit和Windows后,可以导出格式为RAW的等高贴图,如图1-39所示导出等高地形图。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0032-0040.jpg?sign=1739610874-XtvZ3LaskGyfRtcOMVr8O0bxdjAaFhLk-0-427a0b016506f6966f0d23a359445d1c)
图1-39 导出等高地形图
1.3.21 地形等高贴图的导入
新建一个场景,创建地形,选中该地形后,在Inspector面板中,单击画笔列的第7个按钮,再单击“Import Raw”按钮,就可以把导出的贴图贴到新建的地形上(注意:完成此操作步骤后,树木、花草、岩石等贴图都不见了,只有灰度地形图出现)。
1.3.22 作品发布
依次单击“File”→“Build Settings…”,如图1-40所示发布作品。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0033-0041.jpg?sign=1739610874-NsW8RdrKFkXc1L6lNrtOuWzXaLwfdpz0-0-bfde346fd10d96db4cda9ef0c1e67973)
图1-40 发布作品
设置运行提示框是否显示,选择运行提示框中 Default Icon 后面的图片,此处设置的Icon指软件图标(注意:路径名中不能含有中文,文件名也不能是中文名称),如图1-41所示选择作品图标。
![](https://epubservercos.yuewen.com/5755C4/13898202403282706/epubprivate/OEBPS/Images/35956-0033-0042.jpg?sign=1739610874-u72SU0yuBghplpHebpof4dHRe3jBCSSy-0-bc039cee2d0f7c5db771a345ea8dc187)
图1-41 选择作品图标
在Build Settings界面中,选择要发布的平台;单击“Add Open Scenes”按钮,添加发布场景,单击“Build”按钮完成场景漫游作品的发布。