編輯推薦
基於新版本,全麵介紹Unity 5.x全新特性和核心功能
快速入門,示例詳盡實用,涵蓋大量遊戲實例和實戰經驗
《Unity 5.x遊戲開發指南》從初學者的角度循序漸進地講解瞭Unity 5.x全新特性和核心功能,任何有一定編程基礎的人都可以通過本書輕鬆掌握Unity開發。對於已經熟練掌握Unity使用的開發人員,通過《Unity 5.x遊戲開發指南》也可以快速瞭解和掌握Unity 5.0的新功能,《Unity 5.x遊戲開發指南》對於各個功能細節的詳細介紹可以為開發者提供有價值的參考。
內容簡介
《Unity 5.x遊戲開發指南》詳細介紹瞭Unity3D 5.0的各個主要係統,包括地形係統、腳本係統、動畫係統、界麵係統、音頻係統、網絡通訊係統和2D係統,並通過大量案例講解瞭Unity3D 5.0的各種新特性,通俗易懂,是新手入門、迅速上手的實用教程。
《Unity 5.x遊戲開發指南》適用於Unity3D初學者、移動遊戲開發人員、虛擬現實開發人員、計算機及軟件工程專業的學生以及對Unity3D開發感興趣的讀者,也非常適閤作為培訓教材。
作者簡介
羅盛譽,筆名風宇衝,畢業於美國西俄勒岡大學。有豐富的Unity遊戲開發經驗,曾參與多款知名移動端遊戲的研發,在個人博客上發布過多篇熱門教程。
內頁插圖
精彩書評
“風宇衝在Unity聖典上寫過很多博客,在網絡上比較活躍,很喜歡研究和分析新的技術。這本書從基礎到實例操作都寫得很詳細,對新手上路很有幫助。書中還講解瞭屏幕特效、資源加載、網絡通信和遊戲實例等進階內容,是一本值得推薦的好書!”
——鷹,Unity聖典站長
“該書圍繞著知識點循序漸進,從安裝到入門,從使用到精通,詳盡地介紹瞭Unity引擎的核心功能,同時也遵循一圖勝韆言的宗旨,通過大量圖錶來闡述功能及原理,使讀者更加易學易懂,而且每一章都有對應的實戰習題供讀者鞏固學習。相信讀者通過閱讀本書,對Unity技術的掌握會有質的提升。”
——趙可新(四角錢),Unity開發者
“對於想瞭解Unity 5.x新功能的開發者來說,這無疑是一本非常及時的書!書中關於Unity引擎的講解清晰透徹,內容全麵翔實,特彆是針對Unity 5.0的新功能,作者進行瞭全麵的講解。相信讀者讀完本書後,會對Unity引擎的使用有更加全麵的掌握,對Unity 5.0的新功能有更加清晰的瞭解!”
——張鑫,前Unity大中華區技術支持經理
“羅盛譽是Unity開發專傢,他在博客中連載瞭大量Unity相關的教程,尤其是Shader這塊更是讓我大開眼界。他寫的這本書恰到好處,由簡到難,係統地講解瞭如何使用Unity 5.0迅速上手開發。書中詳細地介紹瞭Unity每個重要的知識點,環環相扣,並且配有詳細的實例。讀完這本書後,我認為這是本很好、很係統、很實用的Unity 5.x入門圖書瞭,希望讀者也能從中獲益。”
——宣雨鬆(雨鬆MOMO),Unity開發者
目錄
第1章 Unity基礎知識 1
1.1 Unity簡介 1
1.2 Unity的曆史 1
1.3 下載與安裝 2
1.4 打包與發布 6
1.5 小結 9
1.6 習題 9
第2章 Unity編輯器 10
2.1 遊戲工程 10
2.2 主界麵 11
2.3 Project視圖 12
2.4 Hierarchy視圖 15
2.5 Inspector視圖 15
2.6 Scene視圖 16
2.6.1 工具欄 16
2.6.2 Scene Gizmo 18
2.7 Game視圖 19
2.7.1 Play菜單 19
2.7.2 分辨率菜單 19
2.7.3 Game視圖右側菜單 20
2.8 預製體 20
2.9 小結 22
2.10 習題 22
第3章 Unity腳本 23
3.1 MonoDevelop腳本編輯器 23
3.2 MonoBehavior 24
3.3 UnityGUI 26
3.4 調試 27
3.5 遊戲對象的操作 28
3.5.1 創建遊戲對象 28
3.5.2 獲取遊戲對象 29
3.5.3 添加組件與修改組件 31
3.5.4 發送廣播與消息 32
3.5.5 剋隆遊戲對象 33
3.6 移動、鏇轉和縮放遊戲對象 34
3.6.1 遊戲對象的位置 34
3.6.2 移動遊戲對象 35
3.6.3 縮放遊戲對象 35
3.6.4 鏇轉遊戲對象 35
3.6.5 實例 35
3.7 工具類 36
3.7.1 時間類 36
3.7.2 隨機數 37
3.7.3 數學類 38
3.7.4 四元數 38
3.8 輸入控製 39
3.8.1 計算機輸入 39
3.8.2 自定義輸入 40
3.8.3 移動設備輸入 44
3.9 小結 45
3.10 習題 46
第4章 3D基礎知識 47
4.1 Camera攝像機 47
4.1.1 攝像機參數 47
4.1.2 攝像機投射 48
4.2 3D 模型 49
4.2.1 Mesh網格模型 49
4.2.2 Texture貼圖 50
4.2.3 Material材質 51
4.2.4 對應組件 52
4.2.5 骨骼動畫 53
4.3 小結 53
4.4 習題 54
第5章 創建場景 55
5.1 創建場景 55
5.2 地形編輯器 57
5.2.1 升降地形工具 58
5.2.2 繪製高度工具 59
5.2.3 平滑地形工具 60
5.2.4 繪製地形工具 60
5.2.5 放置樹木工具 61
5.2.6 繪製細節工具 63
5.2.7 地形參數設置 64
5.3 風域 66
5.4 小結 68
5.5 習題 68
第6章 創建人物 69
6.1 Mecanim係統 69
6.2 導入模型 69
6.2.1 模型導入設置 69
6.2.2 Avatar的設置 72
6.3 狀態機 73
6.3.1 Animator 74
6.3.2 添加碰撞體 75
6.3.3 添加攝像機 75
6.3.4 動作混閤與控製 76
6.4 反嚮動力學 86
6.5 人體動畫重定嚮 88
6.6 小結 88
6.7 習題 88
第7章 物理引擎 89
7.1 剛體 89
7.2 碰撞器 90
7.3 物理材質 91
7.4 觸發器 92
7.5 射綫 93
7.6 關節 94
7.6.1 鏈條關節 95
7.6.2 彈簧關節 96
7.7 小結 97
7.8 習題 97
第8章 粒子係統 98
8.1 粒子係統介紹 98
8.2 粒子係統各個模塊 98
8.2.1 Particle System模塊 99
8.2.2 Emission模塊 99
8.2.3 Shape Module模塊 99
8.2.4 Velocity over Lifetime模塊 100
8.2.5 Limit Velocity over Lifetime模塊 100
8.2.6 Force over Lifetime模塊 100
8.2.7 Color over Lifetime模塊 101
8.2.8 Color by Speed模塊 101
8.2.9 Size over Lifetime模塊.101
8.2.10 Size by Speed模塊 101
8.2.11 Rotation over Lifetime模塊 102
8.2.12 Rotation by Speed模塊102
8.2.13 External Forces模塊 102
8.2.14 Collision模塊 102
8.2.15 Sub Emitters模塊 103
8.2.16 Texture Sheet Animation模塊 104
8.2.17 Renderer模塊 104
8.3 實例——煙花 105
8.4 實例——鼠標軌跡 106
8.4.1 點狀軌跡 107
8.4.2 雪花軌跡 107
8.5 小結 108
8.6 習題 108
第9章 用戶界麵 109
9.1 Sprite精靈 109
9.1.1 圖片設置為精靈 109
9.1.2 圖片切割為多個精靈 110
9.1.3 設置Border邊界 112
9.1.4 Pivot錨點 112
9.2 Canvas畫布 113
9.2.1 創建畫布 113
9.2.2 畫布參數 113
9.3 Image圖片 116
9.4 RawImage原始圖片 119
9.5 Text文本 120
9.5.1 Text參數 120
9.5.2 添加陰影 121
9.5.3 添加輪廓 122
9.6 按鈕 122
9.7 輸入區域 124
9.8 開關 125
9.8.1 創建開關 125
9.8.2 開關組 126
9.9 滑動條 128
9.10 滾動區域 130
9.10.1 實現滾動拖曳 130
9.10.2 實現畫麵裁切 130
9.10.3 完整內容 131
9.11 滾動條 131
9.12 小結 132
9.13 習題 132
第10章 數據存儲與讀取 133
10.1 PlayerPrefs 133
10.1.1 整數的存取 133
10.1.2 浮點數的存取 133
10.1.3 字符串的存取 134
10.1.4 其他PlayerPrefs接口 134
10.1.5 屬性訪問器get和set 134
10.1.6 屬性訪問器與PlayerPrefs 134
10.2 JSON 135
10.2.1 JSON數據格式 135
10.2.2 數據存儲 136
10.2.3 數據加密 138
10.3 實例——創建遊戲角色 140
10.3.1 定義數據結構 140
10.3.2 數據管理類 140
10.3.3 創建界麵 143
10.4 小結 145
10.5 習題 145
第11章 音樂音效 146
11.1 基本原理 146
11.2 音頻片段 147
11.3 聲源 148
11.4 收聽者 149
11.5 實例——2D音樂音效 149
11.6 實例——3D音樂音效 150
11.7 混響區域 151
11.8 音頻混閤器 151
11.9 音頻效果 154
11.10 實例——午夜槍手 155
11.11 小結 161
11.12 習題 161
第12章 光照 162
12.1 光照基礎 162
12.1.1 點光源 162
12.1.2 聚光源 163
12.1.3 方嚮光 163
12.1.4 區域光 164
12.2 光的使用 164
12.3 陰影 165
12.3.1 開啓光的陰影 165
12.3.2 陰影技巧 165
12.4 渲染模式 167
12.5 GI 167
12.5.1 GI介紹 167
12.5.2 GI使用 168
12.6 反射環境 169
12.6.1 反射天空盒 170
12.6.2 反射天空盒及場景 170
12.7 光照探針 173
12.8 小結 174
12.9 習題 174
第13章 資源的下載與上傳 175
13.1 下載 175
13.2 上傳 176
13.3 AssetBundle資源包 178
13.3.1 AssetBundle打包 178
13.3.2 AssetBundle上傳 181
13.3.3 AssetBundle下載 182
13.3.4 資源包變體 184
13.3.5 依賴關係 185
13.3.6 AssetBundle使用建議 188
13.4 小結 189
13.5 習題 189
第14章 性能分析工具Profiler 190
14.1 Profiler界麵 190
14.2 連接設備 193
14.3 CPU優化 193
14.3.1 控製颱日誌與預定義標簽 193
14.3.2 預定義標簽 194
14.4 渲染優化 197
14.4.1 渲染參數 198
14.4.2 優化 198
14.5 內存優化 201
14.5.1 降低資源大小 201
14.5.2 釋放內存中的資源 202
14.6 其他優化經驗 202
14.7 小結 202
14.8 習題 202
第15章 導航係統 203
15.1 實現導航係統 203
15.1.1 建立場景 203
15.1.2 設置NavMesh 203
15.1.3 烘焙 204
15.1.4 設置導航代理 206
15.2 障礙物 208
15.3 分離網格鏈接 208
15.4 小結 209
15.5 習題 209
第16章 多人遊戲 210
16.1 Network 210
16.1.1 接口介紹 210
16.1.2 基本實例 211
16.2 Network View 212
16.2.1 接口介紹 212
16.2.2 實例——聊天室 213
16.2.3 實例——碰碰樂 218
16.3 主服務器 222
16.3.1 接口介紹 222
16.3.2 實例 223
16.3.3 架設主服務器 224
16.4 小結 226
16.5 習題 226
第17章 高級功能 227
17.1 尾徑渲染器 227
17.2 綫段渲染器 229
17.2.1 實現 230
17.2.2 實例——閃電效果 231
17.3 鏡頭光暈 232
17.4 光暈 233
17.5 投影儀 233
17.6 太陽光束 238
17.7 鏇轉 239
17.8 漩渦 239
17.9 景深 240
17.10 移軸特效 241
17.11 模糊 241
17.12 動態模糊 242
17.13 泛光 242
17.14 噪點和颳痕 244
17.15 噪點和顆粒 244
17.16 抗鋸齒 244
17.17 卡通渲染 245
17.18 移動設備播放開場視頻 246
17.19 其他功能 247
17.20 小結 248
17.21 習題 248
第18章 3D遊戲實例 249
18.1 前期準備 249
18.1.1 需求分析 249
18.1.2 資源準備 249
18.1.3 知識準備 250
18.1.4 遊戲設計 250
18.2 遊戲實現 251
18.2.1 UI 實現 251
18.2.2 關卡場景 263
18.2.3 主角實現 264
18.2.4 敵人實現 279
18.2.5 音頻功能 279
18.2.6 移動設備支持 280
18.3 小結 284
18.4 習題 284
第19章 2D遊戲基礎 285
19.1 正交攝像機 285
19.2 精靈 285
19.2.1 精靈實現 286
19.2.2 調整精靈尺寸 286
19.2.3 精靈渲染器 287
19.2.4 圖片導入設置 287
19.2.5 精靈編輯 288
19.2.6 精靈圖集 289
19.3 2D 物理係統 291
19.3.1 剛體 291
19.3.2 碰撞器 292
19.3.3 Joint 2D 295
19.3.4 Constant Force 2D 299
19.3.5 Effector 2D 299
19.4 小結 302
19.5 習題 302
第20章 2D遊戲實例 303
20.1 遊戲模塊 303
20.2 管理類的基礎類實現 304
20.3 遊戲項目創建 305
20.4 遊戲管理類 305
20.5 資源管理 305
20.6 聲音管理 306
20.7 特效管理 308
20.8 數據保存 310
20.9 遊戲的界麵 314
20.9.1 菜單麵闆 317
20.9.2 地圖麵闆 319
20.9.3 加載界麵 324
20.9.4 戰鬥界麵 326
20.9.5 消息管理類 329
20.10 技能係統 332
20.11 小結 339
20.12 習題 339
前言/序言
近年來,遊戲行業呈現瞭電腦遊戲、網頁遊戲、手機遊戲百花齊放的新格局。遊戲開發者,特彆是手機遊戲開發者,需要將遊戲發布到各個平颱。如果這個功能由個人獨自完成的話,成本無疑是巨大的。跨平颱的優質3D開發引擎——Unity的崛起,為廣大開發者提供瞭一個很好的跨平颱開發方式。
Unity橫跨10種主要的遊戲平颱:PC、Mac、iOS、Android、Xbox360、PS3、Wii、Flash、Web以及Windows Phone平颱。無論是電腦遊戲、網頁遊戲還是手機遊戲,都可以使用Unity快速開發,而且Unity還有海量的第三方插件輔助開發。
Unity不僅可以進行3D遊戲開發,而且有強大的2D遊戲開發的功能。Unity的使用領域也不僅限於遊戲開發,在虛擬現實、3D空間展示(如房地産樓盤展示)等領域都有良好的錶現,已經麵世的Unity遊戲充分顯示瞭Unity的延展性。大到數百人進行研發的MMO RPG,小到一兩個人的獨立遊戲,都可以使用Unity進行開發。
在Unity 5.0版本以前,Uni
Unity 5.x遊戲開發指南 下載 mobi epub pdf txt 電子書