本書詳細闡述了與Unity關卡設計相關的基本解決方案,主要包括道具的導入和配置、創建地形、動畫基礎、Unity中的游戲角色、基于高級動畫的Mecanim系統、場景光照、音頻、粒子系統等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。
本書適合作為高等院校計算機及相關專業的教材和教學參考書,也可作為相關開發人員的自學教材和參考手冊。
Unity是近幾年非常流行的一個3D游戲開發引擎(特別是移動平臺),它的特點是跨平臺能力強,支持PC、Mac、Linux、網頁、iOS、Android等幾乎所有的平臺,移植便捷,3D圖形性能出眾,為眾多游戲開發者所喜愛。在手機平臺,Unity幾乎成為3D游戲開發的標準工具。本書則在此基礎上將其與關卡設計進行有機的結合,并討論較為高級的開發技術和解決方案。
前 言
讀者或許已經安裝了Unity,但卻苦于無處下手;或者讀者希望了解Unity 5.0中所發布的最新特性。無論讀者是否首次接觸Unity,或者計劃逐步轉向Unity陣營,本書均提供了有價值的內容。通過本書的閱讀,讀者可學習如何構建室外環境,通過實例逐步了解相關開發工具和特性,并根據實際任務提升自己的技術水平。另外,讀者還可通過本書附帶的資源文件開始任一章節的學習,并可有選擇性地進行閱讀。通過本書的學習,讀者將熟悉關卡設計、動畫、建模,以及與市場上優秀引擎相關的知識。
目 錄
第1章 Unity初探..................................................................................................... 1
1.1 啟動項目............................................................................................... 1
1.2 窗口...................................................................................................... 2
1.2.1 Scene窗口.................................................................................... 3
1.2.2 Game窗口.................................................................................... 6
1.2.3 Project窗口................................................................................ 10
1.2.4 Console窗口............................................................................... 12
1.2.5 窗口控制.................................................................................... 13
1.3 Main Camera對象的功能...................................................................... 16
1.4 本章小結.............................................................................................. 17
第2章 道具的導入和配置....................................................................................... 18
2.1 對象的操控方式................................................................................... 18
2.1.1 對齊機制.................................................................................... 19
2.1.2 灰塊........................................................................................... 20
2.2 組件..................................................................................................... 21
2.2.1 添加組件.................................................................................... 21
2.2.2 禁用組件.................................................................................... 22
2.2.3 組件選項.................................................................................... 22
2.3 將道具導入至Unity中.......................................................................... 23
2.3.1 所支持的格式............................................................................. 24
2.3.2 從Blender中導出....................................................................... 24
2.3.3 導入處理.................................................................................... 26
2.4 配置網格.............................................................................................. 27
2.4.1 模型-網格選項............................................................................ 27
2.4.2 雙面法線.................................................................................... 28
2.4.3 標記........................................................................................... 29
2.5 預制組件.............................................................................................. 29
2.6 父對象機制.......................................................................................... 31
2.6.1 父對象和預制組件...................................................................... 31
2.6.2 軸心點....................................................................................... 32
2.7 配置紋理.............................................................................................. 32
2.7.1 所支持的格式............................................................................. 32
2.7.2 紋理導出的準備工作.................................................................. 32
2.7.3 紋理類型的設置......................................................................... 33
2.8 材質..................................................................................................... 35
2.8.1 Unity中的材質........................................................................... 36
2.8.2 創建材質.................................................................................... 37
2.8.3 著色器類型................................................................................ 38
2.9 在Unity中使用LOD............................................................................ 41
2.9.1 LOD的準備方式......................................................................... 41
2.9.2 在Unity中設置LOD................................................................... 42
2.9.3 LODBias..................................................................................... 44
2.10 碰撞器............................................................................................... 44
2.11 本章小結............................................................................................ 45
第3章 創建地形..................................................................................................... 46
3.1 地形規劃.............................................................................................. 46
3.2 畫刷..................................................................................................... 48
3.2.1 創建畫刷.................................................................................... 48
3.2.2 導入畫刷對象............................................................................. 50
3.3 利用高度圖創建地形............................................................................ 51
3.3.1 繪制高度圖................................................................................ 51
3.3.2 導出高度圖................................................................................ 52
3.3.3 在地形中使用高度圖.................................................................. 53
3.4 關卡網格.............................................................................................. 55
3.5 對象層................................................................................................. 55
3.6 地形紋理.............................................................................................. 57
3.6.1 導入紋理.................................................................................... 57
3.6.2 地形的紋理化............................................................................. 59
3.7 Unity中的水面效果.............................................................................. 59
3.8 向關卡中添加樹木................................................................................ 62
3.9 使用Unity Tree editor........................................................................... 65
3.10 繪制細節內容..................................................................................... 69
3.11 設置細節............................................................................................ 69
3.11.1 草皮......................................................................................... 70
3.11.2 其他細節.................................................................................. 71
3.12 自定義地形設置條件.......................................................................... 73
3.12.1 基礎地形.................................................................................. 73
3.12.2 樹木和細節對象........................................................................ 74
3.12.3 分辨率...................................................................................... 75
3.13 天空盒............................................................................................... 76
3.14 本章小結............................................................................................ 77
第4章 動畫基礎..................................................................................................... 78
4.1 動畫的基礎內容................................................................................... 78
4.2 使用Animation編輯器.......................................................................... 78
4.3 創建自定義動畫................................................................................... 79
4.4 編輯器控制選項................................................................................... 80
4.5 Curve編輯器........................................................................................ 82
4.6 使用曲線工具....................................................................................... 84
4.7 自定義動畫和世界空間......................................................................... 85
4.8 利用動畫觸發事件句柄......................................................................... 85
4.9 向Unity中導入道具動畫...................................................................... 88
4.10 本章小結............................................................................................ 92
第5章 Unity中的游戲角色..................................................................................... 93
5.1 配置游戲角色....................................................................................... 93
5.2 從Blender中導出角色.......................................................................... 93
5.2.1 模型概覽.................................................................................... 94
5.2.2 導出為FBX格式........................................................................ 95
5.2.3 導入參考動畫............................................................................. 96
5.3 在Unity中配置游戲角色...................................................................... 98
5.3.1 通用模型和人物模型之間的差異................................................. 98
5.3.2 人物動畫模型........................................................................... 101
5.3.3 錯誤的拓撲示例........................................................................ 104
5.4 附加選項............................................................................................ 106
5.5 本章小結............................................................................................ 107
第6章 基于高級動畫的Mecanim系統.................................................................. 108
6.1 動畫控制器........................................................................................ 108
6.2 動畫狀態............................................................................................ 110
6.3 參數................................................................................................... 111
6.4 設置轉換條件..................................................................................... 112
6.5 混合樹............................................................................................... 113
6.5.1 概述......................................................................................... 113
6.5.2 構建混合樹............................................................................... 114
6.5.3 混合樹內部............................................................................... 114
6.5.4 其他混合樹選項........................................................................ 117
6.6 調整時間縮放值................................................................................. 118
6.7 分層................................................................................................... 118
6.7.1 構建過程.................................................................................. 118
6.7.2 揮舞手臂.................................................................................. 119
6.8 2D混合機制....................................................................................... 121
6.8.1 混合變化.................................................................................. 121
6.8.2 調整運動行為........................................................................... 122
6.9 創建運動行為..................................................................................... 124
6.9.1 設置......................................................................................... 124
6.9.2 行走......................................................................................... 125
6.9.3 轉向......................................................................................... 126
6.9.4 射擊......................................................................................... 127
6.10 本章小結.......................................................................................... 130
第7章 場景光照................................................................................................... 131
7.1 光照組件............................................................................................ 131
7.2 光照類型............................................................................................ 133
7.2.1 點光源...................................................................................... 133
7.2.2 聚光燈...................................................................................... 134
7.2.3 有向光源.................................................................................. 135
7.2.4 區域光源.................................................................................. 136
7.3 環境光源............................................................................................ 137
7.4 全局光照............................................................................................ 138
7.4.1 配置環境.................................................................................. 138
7.4.2 靜態對象和動態對象................................................................. 139
7.4.3 修復縫隙中的光照.................................................................... 141
7.4.4 自發光材質............................................................................... 142
7.4.5 陰影......................................................................................... 142
7.5 光照貼圖............................................................................................ 144
7.5.1 靜態光源和動態光源................................................................. 144
7.5.2 動態陰影和靜態陰影................................................................. 146
7.6 光照選項............................................................................................ 147
7.7 將光照應用于關卡中.......................................................................... 149
7.8 光照探測器........................................................................................ 149
7.9 反射探測器........................................................................................ 151
7.9.1 反射探測器的類型.................................................................... 152
7.9.2 反射探測器的設置.................................................................... 154
7.10 連續烘焙.......................................................................................... 155
7.11 投影儀.............................................................................................. 156
7.11.1 基本應用................................................................................ 156
7.11.2 其他應用................................................................................ 158
7.12 光照效果.......................................................................................... 160
7.12.1 光照Cookies........................................................................... 160
7.12.2 光暈和火焰............................................................................. 164
7.13 本章小結.......................................................................................... 167
第8章 音頻.......................................................................................................... 168
8.1 音頻資源和接收對象.......................................................................... 168
8.1.1 音頻監聽器............................................................................... 169
8.1.2 音頻資源.................................................................................. 169
8.1.3 音頻剪輯.................................................................................. 171
8.1.4 2D和3D音頻........................................................................... 172
8.2 混音器............................................................................................... 174
8.2.1 混音器的工作方式.................................................................... 174
8.2.2 運行期內的調整........................................................................ 176
8.3 濾波器和混響區................................................................................. 177
8.4 本章小結............................................................................................ 179
第9章 粒子系統................................................................................................... 180
9.1 何為粒子系統..................................................................................... 180
9.2 粒子編輯器........................................................................................ 181
9.3 創建瀑布效果..................................................................................... 183
9.4 配置粒子系統..................................................................................... 184
9.4.1 發射方向.................................................................................. 185
9.4.2 配置粒子.................................................................................. 186
9.4.3 調整......................................................................................... 188
9.4.4 紋理層動畫............................................................................... 188
9.5 硬幣粒子............................................................................................ 189
9.6 本章小結............................................................................................ 190
第10章 最后的編輯和構建操作............................................................................ 191
10.1 剛體................................................................................................. 191
10.2 項目設置.......................................................................................... 194
10.3 場景配置.......................................................................................... 198
10.4 關卡加載和流機制............................................................................ 199
10.5 關卡載入時的限制條件..................................................................... 200
10.6 發布關卡.......................................................................................... 201
10.7 本章小結.......................................................................................... 203