書籍簡介:
本書以實例教學(xué)為主線,循序漸進地介紹了Unity在游戲開發(fā)方面的不同功能。第1章,由零開始,引導(dǎo)讀者熟悉Unity編輯器的各個功能模塊和特性。第2~4章是3個不同特色的3D游戲?qū)嵗?,使讀者對Unity游戲開發(fā)有一個較全面的認(rèn)識。第5章是一個2D游戲?qū)嵗轿坏亟榻B了Unity在2D游戲方面的應(yīng)用。第6章和第7章,重點介紹了Unity在網(wǎng)絡(luò)方面的應(yīng)用。第8~10章介紹了如何將Unity游戲移植到網(wǎng)頁、iOS和Android平臺。第11章詳細(xì)介紹了Unity的新GUI系統(tǒng)。第12章是關(guān)于創(chuàng)建Unity游戲美術(shù)資源的工作流程。第13章和第14章分別介紹了行為樹和Play Maker兩款插件,適合各類游戲開發(fā)者。另外,本書*后附有C#語言的快速教程,幫助缺乏程序開發(fā)基礎(chǔ)的讀者快速入門,同時也包括Unity編輯器菜單欄的中英文對照表供讀者查閱。 本書提供了所有實例的源代碼與素材文件,供讀者上機練習(xí)使用,讀者可從網(wǎng)上下載本書資源文件。 本書適用于廣大游戲開發(fā)人員、游戲開發(fā)愛好者、軟件培訓(xùn)機構(gòu)以及計算機專業(yè)的學(xué)生等。
作者簡介:
金璽曾,資深游戲開發(fā)工程師,擁有10余年游戲開發(fā)經(jīng)驗,3D塔防游戲《野人大作戰(zhàn)》主要開發(fā)者。曾在上海盛大網(wǎng)絡(luò)、上海愛客士電腦軟件有限公司任開發(fā)經(jīng)理,目前在個人創(chuàng)業(yè)公司從事VR及游戲開發(fā)。
出版時間:
2017年09月
章節(jié)目錄:
第1章 Unity基礎(chǔ) 1
1.1 初識游戲引擎和Unity2
1.2 運行Unity 3
1.2.1 Unity的版本 3
1.2.2 下載并安裝Unity 4
1.2.3 在線激活Unity 4
1.2.4 運行示例工程 4
1.3 創(chuàng)建一個HelloWorld程序 7
1.3.1 安裝Visual Studio 7
1.3.2 編寫腳本 7
1.3.3 編譯輸出 9
1.4 調(diào)試程序 10
1.4.1 顯示Log 10
1.4.2 在Visual Studio中設(shè)置斷點 11
1.4.3 在MonoDevelop中設(shè)置斷點 12
1.5 Unity腳本基礎(chǔ) 12
1.5.1 Script(腳本)組件 12
1.5.2 腳本的執(zhí)行順序 12
1.5.3 腳本的序列化 13
1.5.4 組件式的編程 14
1.5.5 協(xié)程編程 15
1.6 預(yù)置文件Prefab 16
1.7 實例化 17
1.8 讀取資源 18
1.9 保存工程 18
1.10 小結(jié) 18
第2章 太空射擊游戲 19
2.1 游戲介紹 20
2.1.1 游戲操作 20
2.1.2 主角和敵人 20
2.1.3 游戲UI 20
2.2 導(dǎo)入美術(shù)資源 20
2.3 創(chuàng)建場景 21
2.3.1 創(chuàng)建火星背景和星空動畫 22
2.3.2 設(shè)置攝像機和燈光 25
2.4 創(chuàng)建主角 27
2.4.1 創(chuàng)建腳本 27
2.4.2 控制飛船移動 28
2.4.3 創(chuàng)建子彈 30
2.4.4 創(chuàng)建子彈Prefab 31
2.4.5 發(fā)射子彈 32
2.5 創(chuàng)建敵人 33
2.6 物理碰撞 34
2.6.1 添加碰撞體 34
2.6.2 觸發(fā)碰撞 35
2.7 高級敵人 38
2.7.1 創(chuàng)建敵人 38
2.7.2 發(fā)射子彈 39
2.8 聲音與特效 41
2.9 敵人生成器 43
2.10 游戲UI和戰(zhàn)斗管理 45
2.10.1 創(chuàng)建顯示得分的UI界面 45
2.10.2 創(chuàng)建顯示游戲失敗的UI界面 46
2.10.3 編寫腳本 46
2.11 關(guān)卡跳轉(zhuǎn) 49
2.12 用鼠標(biāo)控制主角 51
2.13 精確的碰撞檢測 53
2.14 自動創(chuàng)建Prefab 55
2.15 發(fā)布游戲 57
2.16 使用Pool Boss創(chuàng)建緩存池 59
2.17 小結(jié) 62
第3章 第一人稱射擊游戲 63
3.1 策劃 64
3.1.1 游戲介紹 64
3.1.2 UI界面 64
3.1.3 主角 64
3.1.4 敵人 64
3.2 游戲場景 64
3.3 主角 65
3.3.1 角色控制器 65
3.3.2 攝像機 67
3.3.3 武器 68
3.4 敵人 69
3.4.1 尋路 69
3.4.2 設(shè)置動畫 71
3.4.3 行為 72
3.5 UI界面 76
3.6 交互 80
3.6.1 主角的射擊 80
3.6.2 敵人的進攻與死亡 82
3.7 出生點 84
3.8 小地圖 87
3.9 小結(jié) 90
第4章 塔防游戲 91
4.1 策劃 92
4.1.1 場景 92
4.1.2 攝像機 92
4.1.3 勝負(fù)判定 92
4.1.4 敵人 92
4.1.5 防守單位 92
4.1.6 UI界面 92
4.2 地圖編輯器 93
4.2.1 “格子”數(shù)據(jù) 93
4.2.2 在Inspector窗口添加自定義UI控件 95
4.2.3 創(chuàng)建一個自定義窗口 98
4.3 游戲場景 99
4.4 制作UI 100
4.5 創(chuàng)建游戲管理器 103
4.6 攝像機 106
4.7 路點 109
4.8 敵人 113
4.9 敵人生成器 116
4.9.1 創(chuàng)建敵人生成器 116
4.9.2 遍歷敵人 118
4.10 防守單位 119
4.11 生命條 128
4.12 小結(jié) 130
第5章 2D游戲 131
5.1 Unity 2D系統(tǒng)簡介 132
5.2 創(chuàng)建Sprite 132
5.2.1 使用SpriteEditor創(chuàng)建Sprite 132
5.2.2 使用SpritePacker創(chuàng)建Sprite 134
5.2.3 圖層排序 135
5.2.4 Sprite邊框和重復(fù)顯示 136
5.3 動畫制作 137
5.3.1 序列幀動畫 137
5.3.2 使用腳本實現(xiàn)序列幀動畫 138
5.3.3 骨骼動畫 139
5.4 2D物理 141
5.5 捕魚游戲 144
5.5.1 游戲玩法 144
5.5.2 準(zhǔn)備2D資源 145
5.5.3 創(chuàng)建魚 146
5.5.4 創(chuàng)建魚群生成器 148
5.5.5 創(chuàng)建子彈和大炮 150
5.5.6 物理碰撞 152
5.6 2D材質(zhì) 153
5.6.1 修改Sprite顏色 153
5.6.2 自定義的黑白效果材質(zhì) 153
5.7 小結(jié) 154
第6章 與Web服務(wù)器的交互 155
6.1 Web服務(wù)器簡介 156
6.2 在Windows上安裝部署Apache156
6.2.1 安裝Apache 156
6.2.2 Apache常用命令 158
6.2.3 安裝MySQL 158
6.2.4 安裝PHP 160
6.2.5 安裝Redis 161
6.3 PHP開發(fā)環(huán)境 162
6.3.1 第一個PHP程序 162
6.3.2 調(diào)試PHP代碼 163
6.3.3 PHP基本語法 164
6.4 WWW基本應(yīng)用 165
6.4.1 HTTP協(xié)議 166
6.4.2 GET請求 166
6.4.3 POST請求 168
6.4.4 上傳下載圖片 169
6.4.5 下載聲音文件 170
6.5 分?jǐn)?shù)排行榜 171
6.5.1 創(chuàng)建數(shù)據(jù)庫 171
6.5.2 創(chuàng)建PHP腳本 172
6.5.3 上傳下載分?jǐn)?shù) 174
6.5.4 使用Redis緩存數(shù)據(jù) 177
6.6 MD5驗證 179
6.7 Best HTTP 179
6.8 Linux環(huán)境部署 180
6.8.1 Linux管理工具 180
6.8.2 安裝Apache 181
6.8.3 安裝MySQL 182
6.8.4 安裝PHP 183
6.8.5 安裝Redis 185
6.9 小結(jié) 186
第7章 基于TCP/IP協(xié)議的聊天實例 187
7.1 TCP/IP開發(fā)簡介 188
7.2 一個簡單的網(wǎng)絡(luò)程序 190
7.3 網(wǎng)絡(luò)引擎 192
7.3.1 數(shù)據(jù)包 193
7.3.2 邏輯處理 199
7.3.3 網(wǎng)絡(luò)功能 201
7.3.4 創(chuàng)建聊天協(xié)議 208
7.4 聊天客戶端 208
7.5 聊天服務(wù)器端 211
7.6 JSON.NET簡介 214
7.7 小結(jié) 215
第8章 HTML5(WebGL)游戲移植 216
8.1 關(guān)于HTML5和WebGL 217
8.2 導(dǎo)出Unity游戲到WebGL平臺 217
8.2.1 導(dǎo)出WebGL游戲 217
8.2.2 設(shè)置WebGL模板 219
8.2.3 默認(rèn)的index.html 219
8.2.4 文件訪問 220
8.3 自定義Loading頁面 221
8.4 編寫WebGL游戲插件 224
8.4.1 訪問Javascript示例一 224
8.4.2 訪問Javascript示例二 225
8.5 在網(wǎng)頁上保存游戲記錄226
8.6 AssetBundle 227
8.6.1 創(chuàng)建AssetBundle資源 227
8.6.2 下載、實例化AssetBundle資源 229
8.6.3 批量創(chuàng)建AssetBundle 230
8.7 小結(jié) 231
封面圖: