中公教育數(shù)字視覺與虛擬交互自學(xué)指南:Unity3D從理論到實戰(zhàn)
定 價:68 元
叢書名:數(shù)字視覺與虛擬交互自學(xué)指南系列用書
- 作者:中公教育優(yōu)就業(yè)研究院 著
- 出版時間:2020/6/1
- ISBN:9787536977822
- 出 版 社:陜西科學(xué)技術(shù)出版社
- 中圖法分類:TP311.5
- 頁碼:436
- 紙張:膠版紙
- 版次:1
- 開本:16開
《中公版·數(shù)字視覺與虛擬交互自學(xué)指南:Unity3D從理論到實戰(zhàn)》一書共分為十三章,涵蓋了Unity3D引擎的各個系統(tǒng)模塊,對虛擬現(xiàn)實、增強現(xiàn)實、游戲開發(fā)三個領(lǐng)域做了深入、細(xì)致地講解。本書按由淺入深、循序漸進的規(guī)律,從引擎初識到高級開發(fā)都做了一一介紹,幫助讀者建立一套完整的知識體系,形成知識樹。
第一章為Unity3D引擎初識,詳細(xì)介紹了Unity3D的各個面板、坐標(biāo)系、3D理論基礎(chǔ)等。
第二章介紹了“面向組件”開發(fā)思想,是一種比“面向?qū)ο蟆备鼮楦呒壍脑O(shè)計思想。該章對腳本組件進行了詳細(xì)講解,包含常用類與回調(diào)方法,是后續(xù)各章節(jié)的基礎(chǔ)。
第三章到第八章涵蓋物理系統(tǒng)、2D精靈系統(tǒng)、UGUI系統(tǒng)、動畫系統(tǒng)、導(dǎo)航系統(tǒng)、特效系統(tǒng)等模塊,對這些模塊進行單獨細(xì)致地分析與講解,每個模塊都對應(yīng)到實際應(yīng)用中的某個具體功能。
第九章為協(xié)程與WWW類,主要介紹了協(xié)程的使用方法與場景,并且闡述了游戲開發(fā)中的多線程的有關(guān)問題,終配合WWW類封裝成下載工具類。
第十章主要介紹數(shù)據(jù)持久化,包括PlayerPrefs、XML的創(chuàng)建與解析、JSON的創(chuàng)建與解析、數(shù)據(jù)庫語法及工具類的封裝,并對數(shù)據(jù)表的設(shè)計做了詳細(xì)講述。
第十一章為動態(tài)資源加載,包括Resources、AssetBundle等技術(shù),并講解了一個資源熱更的案例。
第十二章和第十三章介紹了AR、VR行業(yè)的前景,AR方面主講高通AR SDK,內(nèi)容包括圖片和模型識別、相機控制、SLAM定位和工程打包發(fā)布等技術(shù),VR方面主要介紹了基于HTC Vive的開發(fā)流程與VRTK插件的使用。
因印刷批次不同,圖書封面可能與實際展示有所區(qū)別,增值服務(wù)也可能會有所不同,以讀者收到實物為準(zhǔn)《中公版·數(shù)字視覺與虛擬交互自學(xué)指南:Unity3D從理論到實戰(zhàn)》由具有多年開發(fā)和授課經(jīng)驗的老師編寫,條理清晰,語言通俗易懂,是實戰(zhàn)經(jīng)驗與教學(xué)技巧的精巧結(jié)合。本書章節(jié)結(jié)構(gòu)設(shè)計合理,知識點前后關(guān)聯(lián),講解由淺入深,注重實操與實用性。本書不包含C#語言語法部分,從Unity3D引擎開始講解,讀者需要自行儲備C#語言的相關(guān)知識。
本書采用雙色印刷形式,圖文并茂。配套視頻講解等增值服務(wù)是本書的一大特色。在本書的重要知識點處提供專業(yè)教師的視頻講解,掃描二維碼即可實現(xiàn)在線學(xué)習(xí),操作便捷高效。本書配套的增值視頻使讀者在掌握Unity3D引擎的基礎(chǔ)之上,具備較強的實際操作能力。
第一章Unity3D引擎初識|1
1.1什么是引擎1
1.1.1游戲1
1.1.2游戲引擎4
1.2Unity3D簡介6
1.2.1Unity歷史6
1.2.2Unity優(yōu)勢7
1.3Unity3D軟件安裝9
1.4新建和打開工程12
1.4.1啟動Unity引擎12
1.4.2創(chuàng)建工程13
1.4.3面板介紹15
1.4.4其他功能23
1.5Scene視圖操作24
1.5.1調(diào)整視角25
1.5.2對象操作26
1.6坐標(biāo)系29
1.6.1常用坐標(biāo)系29
1.6.2坐標(biāo)軸顏色及簡稱32
1.73D理論基礎(chǔ)32
1.7.1矢量和標(biāo)量32
1.7.2向量的運算33
1.7.3幀速率34
第二章腳本組件|35
2.1工程與應(yīng)用程序35
2.1.1工程35
2.1.2管理38
2.2面向組件開發(fā)38
2.2.1開發(fā)框架38
2.2.2常用組件41
2.3面向組件開發(fā)思想44
2.4腳本組件44
2.4.1創(chuàng)建腳本44
2.4.2打開腳本47
2.4.3編輯腳本48
2.5腳本組件生命周期49
2.5.1生命周期49
2.5.2腳本執(zhí)行順序51
2.6腳本中常用類52
2.6.1腳本組件的繼承關(guān)系52
2.6.2GameObject類57
2.6.3Vector359
2.6.4Quaternion62
2.6.5Time類63
2.6.6Transform類64
2.6.7Mathf類69
2.7綜合案例70
第三章物理引擎|74
3.1物理引擎簡介74
3.2人機交互75
3.2.1Input類簡介75
3.2.2傳統(tǒng)設(shè)備輸入控制75
3.2.3移動設(shè)備輸入控制78
3.2.4陀螺儀的訪問79
3.2.5鍵盤事件81
3.2.6鼠標(biāo)事件82
3.3碰撞器組件83
3.3.1碰撞器組件介紹83
3.3.2物理材質(zhì)85
3.4剛體組件86
3.4.1剛體組件介紹86
3.4.2剛體組件屬性及方法87
3.4.3使用剛體添加爆炸力88
3.5碰撞事件以及回調(diào)90
3.5.1碰撞事件的條件91
3.5.2碰撞事件回調(diào)方法91
3.5.3碰撞檢測頻率92
3.6觸發(fā)事件以及回調(diào)94
3.6.1觸發(fā)事件的條件94
3.6.2觸發(fā)事件回調(diào)方法94
3.6.3觸發(fā)與碰撞的回調(diào)參數(shù)95
3.7射線96
3.7.1場景射線96
3.7.2相機射線98
3.7.3射線發(fā)射方法重載99
3.7.4其他形狀射線101
3.7.5其他射線發(fā)射方法103
第四章Sprite精靈|105
4.1什么是Sprite精靈105
4.1.12D游戲105
4.1.22D游戲中的精靈106
4.2創(chuàng)建Sprite精靈107
4.2.1生成Sprite單個精靈107
4.2.2精靈切割109
4.2.3精靈打包115
4.3Sprite精靈動畫118
4.3.1精靈動畫的創(chuàng)建119
4.3.2精靈動畫的使用122
4.4Sprite精靈與2D物理組件129
4.4.1Sprite精靈的物理效果129
4.4.2Sprite精靈碰撞事件131
4.4.3Sprite精靈觸發(fā)與觸發(fā)事件133
4.4.4動態(tài)力137
第五章UGUI系統(tǒng)|138
5.1圖形用戶界面(GUI)138
5.1.1什么是GUI138
5.1.2UGUI139
5.2UGUI對象的創(chuàng)建和使用140
5.2.1Text對象140
5.2.2Image對象143
5.2.3RawImage對象147
5.2.4Button對象148
5.2.5Slider對象153
5.2.6Scrollbar對象156
5.2.7Toggle對象157
5.2.8InputField對象160
5.3RectTransform組件162
5.3.1RectTransform介紹162
5.3.2軸點(Pivot)163
5.3.3錨點(Anchor)164
5.4畫布(Canvas)166
5.5UGUI的布局169
5.6ScrollView(拖動效果)173
5.6.1ScrollView對象173
5.6.2ScrollRect組件173
5.6.3Viewport可視窗口174
5.7事件系統(tǒng)(EventSystem)177
5.7.1事件的回調(diào)方法178
5.7.2給事件添加回調(diào)方法的案例180
5.8綜合案例185
5.8.1背包系統(tǒng)186
5.8.2小地圖的制作197
5.8.3關(guān)卡選擇201
第六章動畫系統(tǒng)|214
6.1動畫簡介214
6.2導(dǎo)入動畫資源214
6.2.1Rig裝置選項卡215
6.2.2Animation動畫選項卡216
6.3Mecanim動畫系統(tǒng)219
6.3.1Mecanim簡介219
6.3.2Mecanim的工作流程219
6.3.3Avatar骨骼系統(tǒng)220
6.3.4Animator組件222
6.3.5AnimatorController223
6.3.6動畫融合樹231
6.3.7動畫事件236
6.3.8動畫曲線240
6.3.9動畫層242
6.3.10動畫遮罩244
6.3.11IK動畫248
第七章導(dǎo)航系統(tǒng)|251
7.1導(dǎo)航簡介251
7.2Unity中的導(dǎo)航系統(tǒng)及實現(xiàn)原理251
7.2.1導(dǎo)航的使用流程251
7.2.2烘焙導(dǎo)航網(wǎng)格255
7.2.3導(dǎo)航組件的使用259
7.2.4腳本實現(xiàn)導(dǎo)航261
7.2.5分離路面導(dǎo)航264
7.2.6分層路面烘焙267
7.2.7動態(tài)路障270
第八章游戲特效|273
8.1游戲特效簡介273
8.2粒子系統(tǒng)(ParticleSystem)274
8.2.1粒子系統(tǒng)簡介274
8.2.2粒子組件參數(shù)275
8.2.3粒子系統(tǒng)成員285
8.3拖尾渲染285
8.4線性渲染288
8.5貼圖融合292
第九章協(xié)程與WWW|297
9.1協(xié)程297
9.1.1概述297
9.1.2協(xié)程的原理297
9.1.3協(xié)程的使用298
9.1.4協(xié)程與線程304
9.2WWW305
9.2.1WWW概述305
9.2.2WWW類的常用屬性305
9.2.3WWW類的使用305
9.2.4WWW中的Get方式與Post方式308
9.3下載隊列封裝309
9.3.1下載任務(wù)類310
9.3.2下載隊列管理類314
9.3.3測試用例315
第十章數(shù)據(jù)存儲|318
10.1數(shù)據(jù)存儲定義318
10.1.1游戲中的數(shù)據(jù)318
10.1.2數(shù)據(jù)的持久化320
10.2PlayerPrefs類321
10.2.1存儲機制321
10.2.2存儲路徑321
10.2.3常用方法321
10.2.4應(yīng)用案例322
10.3XML數(shù)據(jù)格式文檔324
10.3.1XML簡介324
10.3.2XML特點及作用325
10.3.3XML基本概念325
10.3.4XML常用類326
10.3.5XML數(shù)據(jù)存取328
10.3.6XML的序列化與反序列化329
10.4JSON數(shù)據(jù)格式文檔331
10.4.1JSON簡介331
10.4.2JSON語法格式332
10.4.3Unity解析JSON的方式333
10.4.4Newtonsoft.Json庫333
10.5SQLite本地數(shù)據(jù)庫337
10.5.1SQLite數(shù)據(jù)庫簡介337
10.5.2SQLite數(shù)據(jù)庫特點337
10.5.3SQL語句338
10.5.4SQLite圖形化工具庫340
10.5.5在Unity中使用SQLite343
第十一章動態(tài)資源加載|349
11.1游戲資源概述349
11.2Resources類349
11.2.1常用方法列表349
11.2.2Load()方法加載資源350
11.2.3注意事項350
11.2.4常見的資源類型350
11.3AssetBundle351
11.3.1AssetBundle的用途351
11.3.2使用AssetBundle的原因352
11.3.3Unity5.x方式打包資源352
11.3.4AssetBundle加載資源355
11.3.5AssetBundle卸載358
11.3.6Unity4.x方式打包資源360
11.4AssetBundle在項目中的應(yīng)用362
11.4.1打包和加載資源362
11.4.2生成MD5清單367
11.4.3比對MD5369
第十二章高通AR|372
12.1導(dǎo)論372
12.1.1AR簡介372
12.1.2AR應(yīng)用場景373
12.1.3ARSDK選擇375
12.2Vuforia基本流程376
12.2.1注冊賬號及AppLicenseKey申請377
12.2.2官方文檔的使用378
12.2.3TargetManager379
12.3圖片和模型識別384
12.3.1插件的獲取384
12.3.2單圖識別交互385
12.3.3聲音交互389
12.3.4動畫交互391
12.3.5顏色交互393
12.3.6多圖識別394
12.3.7物體識別394
12.4簡單相機控制398
12.4.1設(shè)置相機聚焦模式398
12.4.2切換前后相機399
12.4.3開啟閃光燈400
12.5工程打包402
12.5.1配置Unity安卓環(huán)境402
12.5.2打包404
第十三章VR-HtcVive|407
13.1VR概述407
13.1.1VR關(guān)鍵技術(shù)407
13.1.2VR技術(shù)的應(yīng)用領(lǐng)域408
13.1.3VR發(fā)展的限制因素409
13.1.4VR行業(yè)興起及主流硬件409
13.1.5VR主流應(yīng)用商店412
13.2SteamVR開發(fā)環(huán)境配置414
13.2.1硬件基本配置414
13.2.2安裝HTCVive415
13.2.3Unity開發(fā)環(huán)境配置416
13.3SteamVR插件簡單使用416
13.3.1簡介416
13.3.2SteamVRPrefab簡介417
13.3.3SteamVR插件的主要作用418
13.4SteamVR簡單案例開發(fā)418
13.4.1輸入控制418
13.4.2高級輸入控制422
13.5Teleport系統(tǒng)426
13.5.1Teleport的基本概念426
13.5.2Teleport的適用場景426
13.5.3Teleport的分類427
13.5.4兩種瞬移實現(xiàn)428
13.6Vive與UI交互433
13.6.12DUI和3DUI433
13.6.23DUI的實現(xiàn)方式433
13.7ViveControllerHaptic(手柄震動控制)435
13.7.1基本概念435
13.7.2使用場景435
13.7.3實現(xiàn)方式435