国产免费无码又爽又刺激高潮_国产亚洲欧美在线人成aaaa_亚洲av永久无码精品尤物_专区久久五月天_国内精品久久人妻无码妲己影院

專題欄目:ARVRMR虛擬現(xiàn)實(shí)

《Unity 3D/2D手機(jī)游戲開發(fā):從學(xué)習(xí)到產(chǎn)品》

書籍簡介:

本書以實(shí)例教學(xué)為主線,循序漸進(jìn)地介紹了Unity 2018在手機(jī)游戲開發(fā)方面的不同功能。第1章,由零開始,引導(dǎo)讀者熟悉Unity編輯器的各個(gè)功能模塊和特性。第2~4章是3個(gè)不同特色的3D游戲?qū)嵗?,使讀者對Unity游戲開發(fā)有一個(gè)較全面的認(rèn)識。第5章是一個(gè)2D游戲?qū)嵗?,全方位地介紹了Unity在2D游戲方面的應(yīng)用。第6章和第7章重點(diǎn)介紹了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兩款插件,第15章介紹了使用HTC Vive創(chuàng)建VR應(yīng)用,第16章介紹了Unity結(jié)合Vuforia 在AR方面的應(yīng)用,第17和第18章介紹了Shader圖形編程和Lua腳本在Unity中的應(yīng)用。本書*后還附有C#語言的快速教程,幫助缺乏程序開發(fā)基礎(chǔ)的讀者快速入門,同時(shí)也包括Unity編輯器菜單欄的中英文對照表供讀者查閱。 本書提供了所有實(shí)例的源代碼與素材文件,供讀者上機(jī)練習(xí)使用,讀者可從網(wǎng)上下載本書資源文件。

本書適合廣大游戲開發(fā)人員、游戲開發(fā)愛好者、軟件培訓(xùn)機(jī)構(gòu)以及計(jì)算機(jī)專業(yè)的學(xué)生等使用。

作者簡介:

金璽曾

資深游戲開發(fā)工程師,擁有10余年游戲行業(yè)從業(yè)經(jīng)驗(yàn),先后在上海盛大網(wǎng)絡(luò),上海愛客士電腦軟件,上海皿鎏軟件從事游戲開發(fā)工作,參與過很多原創(chuàng)和外包項(xiàng)目。

出版時(shí)間:

2019年03月

章節(jié)目錄:

第1章 Unity基礎(chǔ) 1
1.1 初識游戲引擎和Unity 2
1.2 運(yùn)行Unity 3
1.2.1 Unity的版本 3
1.2.2 下載并安裝Unity 4
1.2.3 在線激活Unity 4
1.2.4 運(yùn)行示例工程 4
1.3 創(chuàng)建一個(gè)Hello World程序 7
1.3.1 安裝Visual Studio 8
1.3.2 編寫腳本 8
1.3.3 編譯輸出 10
1.4 調(diào)試程序 11
1.4.1 顯示Log 11
1.4.2 在Visual Studio中設(shè)置斷點(diǎn) 11
1.5 Unity腳本基礎(chǔ) 12
1.5.1 Script(腳本)組件 12
1.5.2 腳本的執(zhí)行順序 13
1.5.3 腳本的序列化 14
1.5.4 組件式編程 15
1.5.5 協(xié)程編程 16
1.6 預(yù)置文件Prefab和資源管理 17
1.6.1 創(chuàng)建Prefab 17
1.6.2 Unity資源包 18
1.6.3 管理Unity插件 18
1.7 讀取資源和實(shí)例化 19
1.7.1 在腳本中創(chuàng)建一個(gè)Game Object 19
1.7.2 通過序列化方式引用資源 19
1.7.3 通過IO方式讀取資源 20
1.8 保存工程 20
1.9 時(shí)間和動畫 21
1.10 小結(jié) 21
第2章 太空射擊游戲 23
2.1 游戲介紹 24
2.1.1 游戲操作 24
2.1.2 主角和敵人 24
2.1.3 游戲UI 24
2.2 導(dǎo)入美術(shù)資源 24
2.3 創(chuàng)建場景 25
2.3.1 創(chuàng)建火星背景和星空動畫 26
2.3.2 設(shè)置攝像機(jī)和燈光 30
2.4 創(chuàng)建主角 31
2.4.1 創(chuàng)建腳本 32
2.4.2 控制飛船移動 33
2.4.3 創(chuàng)建子彈 35
2.4.4 創(chuàng)建子彈Prefab 36
2.4.5 發(fā)射子彈 37
2.5 創(chuàng)建敵人 38
2.6 物理碰撞 39
2.6.1 添加碰撞體 39
2.6.2 觸發(fā)碰撞 40
2.7 高級敵人 43
2.7.1 創(chuàng)建敵人 43
2.7.2 發(fā)射子彈 44
2.8 聲音與特效 46
2.9 敵人生成器 48
2.10 游戲UI和戰(zhàn)斗管理 50
2.10.1 創(chuàng)建顯示得分的UI界面 50
2.10.2 創(chuàng)建顯示游戲失敗的UI界面 51
2.10.3 編寫腳本 52
2.11 關(guān)卡跳轉(zhuǎn) 54
2.12 用鼠標(biāo)控制主角 56
2.13 精確的碰撞檢測 58
2.14 自動創(chuàng)建Prefab 60
2.15 發(fā)布游戲 62
2.16 使用PoolManager創(chuàng)建對象池 64
2.17 小結(jié) 66
第3章 第一人稱射擊游戲 68
3.1 策劃 69
3.1.1 游戲介紹 69
3.1.2 UI界面 69
3.1.3 主角 69
3.1.4 敵人 69
3.2 游戲場景 69
3.3 主角 70
3.3.1 角色控制器 70
3.3.2 攝像機(jī) 72
3.3.3 武器 73
3.4 敵人 74
3.4.1 尋路 74
3.4.2 設(shè)置動畫 76
3.4.3 行為 77
3.5 UI界面 80
3.6 交互 84
3.6.1 主角的射擊 84
3.6.2 敵人的進(jìn)攻與死亡 86
3.7 出生點(diǎn) 88
3.8 小地圖 90
3.9 小結(jié) 93
第4章 塔防游戲 94
4.1 策劃 95
4.1.1 場景 95
4.1.2 攝像機(jī) 95
4.1.3 勝負(fù)判定 95
4.1.4 敵人 95
4.1.5 防守單位 95
4.1.6 UI界面 95
4.2 地圖編輯器 96
4.2.1 “格子”數(shù)據(jù) 96
4.2.2 在Inspector窗口添加自定義UI控件 98
4.2.3 創(chuàng)建一個(gè)自定義窗口 100
4.3 游戲場景 102
4.4 制作UI 103
4.5 創(chuàng)建游戲管理器 105
4.6 攝像機(jī) 109
4.7 路點(diǎn) 111
4.8 敵人 115
4.9 敵人生成器 118
4.9.1 創(chuàng)建敵人生成器 118
4.9.2 遍歷敵人 121
4.10 防守單位 121
4.11 生命條 130
4.12 小結(jié) 132
第5章 2D游戲 133
5.1 Unity 2D系統(tǒng)簡介 134
5.2 創(chuàng)建Sprite 134
5.2.1 使用SpriteEditor創(chuàng)建Sprite 134
5.2.2 使用SpritePacker創(chuàng)建Sprite 136
5.2.3 圖層排序 137
5.2.4 Sprite邊框和重復(fù)顯示 138
5.3 動畫制作 138
5.3.1 序列幀動畫 138
5.3.2 使用腳本實(shí)現(xiàn)序列幀動畫 140
5.3.3 骨骼動畫 141
5.4 2D物理 142
5.5 捕魚游戲 146
5.5.1 游戲玩法 146
5.5.2 準(zhǔn)備2D資源 146
5.5.3 創(chuàng)建魚 148
5.5.4 創(chuàng)建魚群生成器 150
5.5.5 創(chuàng)建子彈和大炮 151
5.5.6 物理碰撞 153
5.6 2D材質(zhì) 154
5.6.1 修改Sprite顏色 154
5.6.2 自定義的黑白效果材質(zhì) 155
5.7 小結(jié) 155
第6章 與Web服務(wù)器的交互 156
6.1 Web服務(wù)器簡介 157
6.2 在Windows上安裝部署Apache 158
6.2.1 安裝Apache 158
6.2.2 Apache常用命令 159
6.2.3 安裝MySQL 159
6.2.4 安裝PHP 161
6.2.5 安裝Redis 162
6.3 PHP開發(fā)環(huán)境 163
6.3.1 第一個(gè)PHP程序 163
6.3.2 調(diào)試PHP代碼 164
6.3.3 PHP基本語法 165
6.4 WWW基本應(yīng)用 167
6.4.1 創(chuàng)建簡單的UI界面 167
6.4.2 GET請求 168
6.4.3 POST請求 169
6.4.4 上傳下載圖片 170
6.4.5 下載聲音文件 171
6.5 分?jǐn)?shù)排行榜 172
6.5.1 創(chuàng)建數(shù)據(jù)庫 172
6.5.2 創(chuàng)建PHP腳本 173
6.5.3 上傳下載分?jǐn)?shù) 175
6.5.4 使用Redis緩存數(shù)據(jù) 177
6.6 MD5驗(yàn)證 179
6.7 小結(jié) 180
第7章 TCP UDP實(shí)例 181
7.1 網(wǎng)絡(luò)開發(fā)簡介 182
7.2 簡單的網(wǎng)絡(luò)通信程序 184
7.2.1 簡單的TCP程序 184
7.2.2 簡單的UDP程序 186
7.3 異步TCP網(wǎng)絡(luò)通信 188
7.3.1 創(chuàng)建數(shù)據(jù)包對象 188
7.3.2 邏輯處理 190
7.3.3 核心TCP網(wǎng)絡(luò)功能 192
7.3.4 創(chuàng)建聊天協(xié)議 196
7.4 Unity聊天客戶端 197
7.5 聊天服務(wù)器端 200
7.6 JSON.NET簡介 205
7.7 小結(jié) 206
第8章 HTML5(WebGL)游戲移植 207
8.1 關(guān)于HTML5和WebGL 208
8.2 導(dǎo)出Unity游戲到WebGL平臺 208
8.2.1 導(dǎo)出WebGL游戲 208
8.2.2 設(shè)置WebGL模板 210
8.2.3 默認(rèn)的index.html 210
8.2.4 文件訪問 211
8.3 自定義Loading頁面 212
8.4 編寫WebGL游戲插件 215
8.4.1 訪問JavaScript示例一 215
8.4.2 訪問JavaScript示例二 216
8.5 在網(wǎng)頁上保存游戲記錄 217
8.6 小結(jié) 217
第9章 iOS游戲移植 218
9.1 iOS簡介 219
9.2 軟件安裝 219
9.3 申請開發(fā)權(quán)限 219
9.4 設(shè)置iOS開發(fā)環(huán)境 219
9.5 測試iOS游戲 222
9.6 發(fā)布iOS游戲 223
9.7 對接iOS原生語言 223
9.7.1 在Xcode中創(chuàng)建Objectiv-C代碼 223
9.7.2 在Unity中引用Objectiv-C代碼 226
9.8 內(nèi)消費(fèi) 227
9.9 本地存儲位置 227
9.10 使用命令行編譯Xcode工程 228
9.10.1 編譯Xcode工程 228
9.10.2 打包.ipa文件 228
9.11 小結(jié) 228
第10章 Android游戲移植 229
10.1 Android簡介 230
10.2 安裝Android SDK 230
10.3 運(yùn)行Android游戲 231
10.3.1 準(zhǔn)備測試環(huán)境 231
10.3.2 設(shè)置Android游戲工程 232
10.3.3 測試Android游戲 234
10.3.4 發(fā)布Android游戲 234
10.3.5 Obb數(shù)據(jù)包 236
10.4 使用Android Studio 236
10.4.1 Android Studio簡介 237
10.4.2 配置Android Studio 237
10.4.3 創(chuàng)建Hello world程序 238
10.5 從Unity到Android Studio 239
10.5.1 創(chuàng)建Unity工程 240
10.5.2 創(chuàng)建Android Studio工程 241
10.5.3 查看Log 243
10.5.4 發(fā)布程序 244
10.6 使用腳本編譯游戲 245
10.6.1 在Unity中使用腳本導(dǎo)出Android工程 245
10.6.2 使用Python腳本訪問Unity命令行 247
10.6.3 使用命令行編譯Android Studio工程 248
10.7 獲得簽名證書的sha1值 249
10.8 導(dǎo)入庫文件 250
10.9 Plugins目錄 251
10.10 代碼混淆 251
10.11 百度地圖實(shí)例 252
10.11.1 導(dǎo)入百度地圖SDK 252
10.11.2 實(shí)現(xiàn)百度地圖控件 253
10.12 觸屏操作 256
10.13 AssetBundle 261
10.13.1 創(chuàng)建AssetBundle資源 261
10.13.2 下載、實(shí)例化AssetBundle資源 263
10.13.3 批量創(chuàng)建AssetBundle 264
10.14 小結(jié) 265
第11章 Unity新GUI完全攻略 266
11.1 Unity的GUI系統(tǒng) 267
11.2 Canvas(畫布) 267
11.2.1 創(chuàng)建Canvas 268
11.2.2 設(shè)置Canvas 268
11.2.3 Canvas的屏幕適應(yīng)模式 271
11.2.4 Canvas層級內(nèi)UI控件的排序 271
11.2.5 Canvas的隱藏和顯示 272
11.2.6 查找UI層級下的子控件 272
11.3 UI坐標(biāo)對齊方式 272
11.4 Text(文字) 273
11.5 自定義字體 274
11.5.1 創(chuàng)建字體貼圖 274
11.5.2 創(chuàng)建Shader 276
11.6 Image(圖像) 278
11.6.1 創(chuàng)建Image控件 278
11.6.2 設(shè)置Alpha 279
11.6.3 設(shè)置Raycast Target 279
11.6.4 設(shè)置UI圖像為Sliced類型 280
11.6.5 設(shè)置UI圖像為Tiled類型 281
11.6.6 設(shè)置UI圖像為Filled類型 281
11.6.7 Mask(蒙版) 282
11.7 Button(按鈕)控件 283
11.7.1 創(chuàng)建按鈕 283
11.7.2 設(shè)置按鈕狀態(tài)變化 283
11.7.3 在編輯器中設(shè)置按鈕觸發(fā)事件 284
11.7.4 在腳本中定義按鈕單擊事件 285
11.7.5 判斷按壓按鈕事件 286
11.8 Toggle(開關(guān))控件 286
11.8.1 創(chuàng)建Toggle控件 286
11.8.2 Toggle組 287
11.8.3 Toggle控件的腳本 288
11.9 Raw Image控件 288
11.10 Slider(滑塊)控件 290
11.10.1 創(chuàng)建Slider控件 290
11.10.2 改變滑塊大小 290
11.10.3 使用腳本控制滑塊 291
11.11 Input Field(文本輸入)控件 291
11.12 Scroll View(卷軸視圖)控件 292
11.13 Dropdown(下拉列表)控件 294
11.14 實(shí)用UI功能 295
11.14.1 判斷是否單擊了UI 295
11.14.2 拖動UI控件方法1 295
11.14.3 拖動UI控件方法2 297
11.14.4 在UI前面顯示粒子特效 298
11.15 使用插件DOTween制作動畫 299
11.15.1 在編輯器中設(shè)置DOTween動畫 299
11.15.2 在腳本中設(shè)置DOTween動畫 300
11.16 使用插件EnhancedScroller優(yōu)化卷軸視圖 301
11.16.1 創(chuàng)建數(shù)據(jù)模型 302
11.16.2 創(chuàng)建UI視圖控制腳本 302
11.16.3 創(chuàng)建控制器 302
11.16.4 創(chuàng)建卷軸視圖UI 303
11.17 小結(jié) 305
第12章 游戲開發(fā)中的美術(shù)工作流程 306
12.1 Unity和藝術(shù)家 307
12.2 視圖操作捕捉 307
12.3 光照和渲染系統(tǒng) 308
12.3.1 光源類型 308
12.3.2 渲染管道 309
12.3.3 質(zhì)量設(shè)置 310
12.3.4 實(shí)時(shí)陰影 310
12.3.5 環(huán)境光 312
12.3.6 Fog(霧) 313
12.3.7 直接照明與間接照明 314
12.3.8 Lightmapping(光照貼圖) 316
12.3.9 環(huán)境反射采樣 321
12.3.10 光照采樣 322
12.4 色彩空間 324
12.5 物理材質(zhì) 326
12.6 攝像機(jī) 329
12.7 地形 331
12.8 粒子特效 334
12.9 物理設(shè)置 339
12.10 游戲資源 341
12.10.1 貼圖 341
12.10.2 在3ds Max中創(chuàng)建法線貼圖 342
12.10.3 3ds Max靜態(tài)模型導(dǎo)出 343
12.10.4 3ds Max動畫導(dǎo)出 345
12.10.5 Maya模型導(dǎo)出 345
12.11 Unity兩足動畫系統(tǒng) 346
12.11.1 修改3ds Max兩足動畫骨骼 347
12.11.2 導(dǎo)入3ds Max兩足角色到Unity 348
12.11.3 導(dǎo)入角色動畫到Unity 348
12.11.4 表情動畫 349
12.11.5 動畫控制器 350
12.12 動畫插件Skele 351
12.13 電影片段制作 355
12.14 美術(shù)資源的優(yōu)化 357
12.15 小結(jié) 358
第13章 Behavior Designer——行為樹AI 359
13.1 行為樹和AI 360
13.1.1 行為樹插件的安裝 360
13.1.2 簡單的AI處理方式 360
13.1.3 狀態(tài)機(jī)AI處理方式 361
13.1.4 Behavior Designer的行為樹AI處理方式 362
13.2 行為樹任務(wù) 363
13.2.1 任務(wù)返回值 363
13.2.2 Action(動作) 363
13.2.3 Composite(組合) 363
13.2.4 Conditional(條件) 365
13.2.5 Decorator(修飾) 366
13.3 行為樹實(shí)例 366
13.3.1 主角的行為樹 367
13.3.2 游蕩的敵人 372
13.3.3 行為樹的交互 373
13.4 行為樹系統(tǒng)擴(kuò)展 376
13.4.1 外部行為樹 376
13.4.2 自定義任務(wù) 377
13.4.3 自定義共享數(shù)據(jù)類型 378
13.4.4 在腳本中設(shè)置行為樹 380
13.4.5 在腳本中發(fā)送事件 380
13.5 優(yōu)化 380
13.6 小結(jié) 381
第14章 玩轉(zhuǎn)PlayMaker 382
14.1 關(guān)于PlayMaker 383
14.1.1 優(yōu)點(diǎn)和缺點(diǎn) 383
14.1.2 安裝 383
14.2 PlayMaker的模塊和工作機(jī)制 384
14.2.1 有限狀態(tài)機(jī) 384
14.2.2 創(chuàng)建PlayMaker狀態(tài)機(jī) 384
14.2.3 State(狀態(tài)) 385
14.2.4 Event(事件) 385
14.2.5 Action(動作) 386
14.2.6 變量 387
14.2.7 發(fā)送事件 388
14.3 自定義Action 388
14.4 小結(jié) 391
第15章 VR虛擬現(xiàn)實(shí)開發(fā) 392
15.1 VR簡介 393
15.2 設(shè)置HTC Vive開發(fā)環(huán)境 393
15.3 VR操作示例 394
15.3.1 創(chuàng)建VR場景 394
15.3.2 手柄控制器 395
15.4 小結(jié) 397
第16章 AR增強(qiáng)現(xiàn)實(shí)開發(fā) 398
16.1 AR和Vuforia 399
16.2 創(chuàng)建Vuforia工程 399
16.3 準(zhǔn)備AR參考目標(biāo) 401
16.4 設(shè)置AR參考目標(biāo) 402
16.5 小結(jié) 404
第17章 Shader編程與后期特效 405
17.1 Shader簡介 406
17.2 渲染管線 406
17.3 ShaderLab語言 407
17.4 CG語言簡介 409
17.5 Vertex and Fragment Shader示例 409
17.5.1 顯示紋理和色彩 409
17.5.2 使用通道表現(xiàn)多個(gè)紋理 412
17.5.3 添加基本光照 414
17.5.4 UV動畫效果 415
17.5.5 黑白效果 416
17.5.6 簡單描邊效果 417
17.5.7 Alpha透明效果 419
17.6 屏幕特效示例 421
17.7 后期特效 423
17.8 小結(jié) 424
第18章 動態(tài)編程和Lua 425
18.1 動態(tài)語言簡介 426
18.2 動態(tài)讀取程序集實(shí)現(xiàn)熱更新 426
18.2.1 創(chuàng)建.dll文件 426
18.2.2 測試熱更新.dll文件 427
18.2.3 通過反射訪問.dll文件 428
18.3 Lua語言快速教程 429
18.3.1 MoonSharp和Lua開發(fā)環(huán)境的安裝 429
18.3.2 Lua提供的類型 429
18.3.3 Lua的判斷和循環(huán)語句 430
18.3.4 Lua的函數(shù) 431
18.3.5 Lua的IO操作 431
18.3.6 Lua的數(shù)組操作 432
18.3.7 Lua的字符串操作 433
18.3.8 Lua的協(xié)程 433
18.4 Lua與Unity的交互 435
18.4.1 在Unity中讀取Lua代碼 435
18.4.2 將Unity 功能導(dǎo)入到Lua中 436
18.5 Lua腳本的熱更新 437
18.6 小結(jié) 438
附錄A C#語言 439
A.1 C#基礎(chǔ) 440
A.1.1 C#簡介 440
A.1.2 運(yùn)行控制臺程序 440
A.1.3 類型 441
A.1.4 內(nèi)置類型 441
A.1.5 標(biāo)識符 442
A.1.6 語句和表達(dá)式 442
A.1.7 變量和常量 443
A.1.8 枚舉 443
A.1.9 數(shù)學(xué)操作符 443
A.1.10 關(guān)系操作符 444
A.1.11 邏輯操作符 444
A.1.12 操作符優(yōu)先級 445
A.1.13 方法 445
A.1.14 遞歸 446
A.1.15 條件分支語句 446
A.1.16 循環(huán)語句 447
A.1.17 三元操作符 448
A.1.18 預(yù)處理 448
A.2 面向?qū)ο缶幊?449
A.2.1 類 449
A.2.2 this關(guān)鍵字 450
A.2.3 封裝 451
A.2.4 繼承與多態(tài) 452
A.2.5 靜態(tài)成員 454
A.2.6 異常處理 455
A.3 字符串 456
A.4 數(shù)組 458
A.4.1 創(chuàng)建數(shù)組 458
A.4.2 遍歷數(shù)組和迭代器 458
A.5 基本I/O操作 460
A.5.1 寫文件 460
A.5.2 讀文件 461
A.5.3 刪除文件 462
A.5.4 二進(jìn)制讀寫 462
A.6 泛型 463
A.6.1 實(shí)現(xiàn)泛型的基本語法 463
A.6.2 List的常見操作 464
A.6.3 List的排序 465
A.7 委托 468
A.7.1 委托 468
A.7.2 Lambda表達(dá)式 469
A.7.3 泛型委托 470
A.7.4 Action和Func 470
A.8 反射和特性 471
A.8.1 反射 471
A.8.2 特性 471
A.9 小結(jié) 472
附錄B 特殊文件夾 473
附錄C Unity編輯器菜單中英文對照 475

封面圖:

發(fā)表評論

相關(guān)文章