增強(qiáng)現(xiàn)實(shí)開發(fā)者實(shí)戰(zhàn)指南
定 價(jià):99 元
- 作者:[美]喬納森·林諾維斯(Jonathan Linowes) 等
- 出版時(shí)間:2019/9/1
- ISBN:9787111625629
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP391.98
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書是一本適合AR開發(fā)者的實(shí)戰(zhàn)案頭書,是可快速熟悉各平臺(tái)AR 項(xiàng)目開發(fā)的實(shí)戰(zhàn)教程,從中可以學(xué)習(xí)AR在市場(chǎng)營(yíng)銷、教育、工業(yè)培訓(xùn)和 游戲等領(lǐng)域的商業(yè)應(yīng)用。
本書以逐步教學(xué)的方式詳解如何使用Unity 3D、Vuforia、ARToolkit、 Microsoft 混合現(xiàn)實(shí) HoloLens、Apple ARKit 和 Google ARCore 在移動(dòng)智能設(shè) 備和可穿戴設(shè)備上構(gòu)建激動(dòng)人心的AR應(yīng)用程序,讓你快速掌握各種AR 開發(fā)關(guān)鍵技術(shù)與知識(shí),助你開發(fā)出自己的實(shí)用AR項(xiàng)目。
本書適合想要在各平臺(tái)上開發(fā)AR項(xiàng)目的開發(fā)人員、設(shè)計(jì)人員等從業(yè) 者,AR技術(shù)的研究者、相關(guān)專業(yè)師生,以及對(duì)AR技術(shù)感興趣的人員 閱讀。
I關(guān)于作者
Jonathan Linowes是沉浸式媒體獨(dú)立工作室ParkerhUl現(xiàn)實(shí)實(shí)驗(yàn)室的負(fù)責(zé)人#他是名副其實(shí) 的3D圖像愛好者、Unity開發(fā)者,成功的企業(yè)家與老師。他擁有雪城大學(xué)的藝術(shù)學(xué)位與麻省理工 學(xué)院媒體實(shí)驗(yàn)室的碩士學(xué)位。他參與創(chuàng)辦了包括Autodesk公司在內(nèi)的幾家成功的公司,并擔(dān)任 技術(shù)負(fù)責(zé)人的職務(wù)#同時(shí)他還是Pakt出版社出版的Uni# Virtual Reality Projects與Cardboard VR Projects for Android 的作者#
Kryshan Babilinski是一位經(jīng)驗(yàn)非常豐富的聯(lián)合開發(fā)人員,擁有大量豐富的3D設(shè)計(jì)知識(shí)#自 2015年以來,他一直從事開發(fā)專業(yè)的A#VR應(yīng)用#他領(lǐng)導(dǎo)一個(gè)Unity開發(fā)團(tuán)隊(duì)Babilin Applica- tions公司,致力于開源代碼的開發(fā)與從事Unity社區(qū)的工作#現(xiàn)在Krystian帶領(lǐng)著Parkerhtl現(xiàn)實(shí) 實(shí)驗(yàn)室研發(fā)了一款名為Power Solitairy VR的多平臺(tái)虛擬現(xiàn)實(shí)游戲#
I關(guān)于審校者
Micheai Lanham是一位擁有petroWEB認(rèn)證的解決方案架構(gòu)師,目前居住在加拿大阿爾伯塔 省的卡爾加里#在以往的職業(yè)生涯中,他開發(fā)了集成GIS應(yīng)用程序,該應(yīng)用具有高級(jí)機(jī)器學(xué)習(xí)與 空間搜索功能。他是一名專業(yè)的游戲開發(fā)愛好者,做桌面游戲與移動(dòng)游戲已經(jīng)超過15年了# 2007年Micheai接觸到了 Unity 3D,從那時(shí)起,他便成了一名程序發(fā)燒友、顧問,以及多個(gè)Unity 游戲和圖形項(xiàng)目的經(jīng)理# Micheai 編寫的 Augmented Reality Game Development 與 Game Audit Develoj- mens with Unit# 5. p也由P—kt出版社出版#
關(guān)于作者
關(guān)于審校者
原書前言
第1章增強(qiáng)你的世界
1.1 什么是AR
1.2AR 與 VR
1.3AR如何工作
1.3. 1基于手持移動(dòng)設(shè)備的AR
1.3.2基于光學(xué)眼鏡的AR
1.3.3基于標(biāo)識(shí)(Target- based)的
AR
1.3.43D空間建圖(映射)
1.3.5利用空間建圖(映射)開發(fā)
AR
1.3.6可穿戴AR的輸入
1.3.7其他AR顯示技術(shù)
1.4AR標(biāo)識(shí)類型
1.4.1 黑白標(biāo)識(shí)(Marker)
1.4. 2 編碼標(biāo)識(shí)
1.4. 3 圖像標(biāo)識(shí)(Image Marker)
1.4. 4 多目標(biāo)標(biāo)識(shí)(Multi-Targets)
1.4.5文本識(shí)別
1.4.6簡(jiǎn)單形狀標(biāo)識(shí)
1.4.7物體識(shí)別
1.4.8空間地圖
1.4.9基于地理位置追蹤(GPS-Based
Tracking)
1.5關(guān)于AR的技術(shù)問題
1.5.1 視場(chǎng)角(Field of View)
1.5.2視覺感知18
1.5.3 焦點(diǎn)19
1.5.4分辨率與刷新率 19
1.5.5人體工程學(xué) 19
1.6 AR的應(yīng)用20
1.6.1企業(yè)營(yíng)銷方向 20
1.6.2教育方向 20
1.6.3工業(yè)培訓(xùn)方向 20
1.6.4零售方向20
1.6.5游戲方向 21
1.6.6其他方向 21
1.7本書的重點(diǎn)21
1.8 本章小結(jié)23
第2章系統(tǒng)設(shè)置24
2. 1 安裝 Unity 24
2.1.1安裝要求25
2.1.2下載并安裝25
2.2 Unity 介紹27
2.2. 1 Unity 編輯器28
2.2.2對(duì)象與層次 30
2.2.3場(chǎng)景編輯 30
2.2.4游戲開發(fā) 35
2.3 AR中攝像頭的使用38
2.4 獲取與使用Vuforie 40
2. 4. 1 安裝 Vuforie 41
2.4.2VuforiaConfiguration 設(shè)置 43
2.4. 3 使用 Vuforia 創(chuàng)建 demo 45
2.5 獲取與使用ARToolkit 51
2.5. 1 安裝 ARToolkit 52
2.5.2導(dǎo)入 ARToolkit 資源包 53
2.5.3ARToolkit 場(chǎng)景設(shè)置 54
2.5. 4 快速構(gòu)建 ARToolkit demo 58
2.6 本章小結(jié)61
第3章構(gòu)建你的應(yīng)用程序63
3.1識(shí)別開發(fā)平臺(tái)與工具包63
3.2 Unity構(gòu)建與運(yùn)行64
3. 3 針對(duì) Android 平臺(tái) 68
3.3.1安裝Java開發(fā)工具包(JDK)……69
3.3.2安裝 Android SDK 71
3. 3. 3安裝USB設(shè)備、調(diào)試與連接 ……73
3. 3. 4 配置Unity的外部工具 74
3.3. 5 配置Android的Unity環(huán)境與
播放器(Player) 75
3.3.6構(gòu)建與運(yùn)行77
3. 3. 7排除問題 78
3.3. 8 使用 Google ARCore for Unity 78
3.4針對(duì)iOS平臺(tái)82
3. 4. 1獲得 Apple ID 83
3.4.2安裝 Xcode 83
3.4.3配置iOS的Unity播放器 83
3.4.4ARToolkit 播放器設(shè)置 86
3.4.5構(gòu)建與運(yùn)行 86
3.4.6排除問題 86
3. 4. 7使用 Apple ARKit for Unity 89
3.5針對(duì)微軟 HoloLens 94
3. 5.1獲得Microsoft開發(fā)人員賬戶95
3.5.2啟用 Windows 10 Hyper-V 95
3. 5. 3安裝 Visual Studio 96
3.5.4安裝 HoloLens 模擬器 99
3. 5. 5 設(shè)置與配對(duì)HoloLens設(shè)備進(jìn)行
開發(fā)99
3.5.6配置Unity的外部工具 101
3. 5. 7 配置 UWP holographic 的 Unity 平臺(tái)
與播放器1。2
3.5. 8 HoloLens 的 Vuforia 設(shè)置104
3.5.9構(gòu)建與運(yùn)行106
3.5.10Unity中的全息模擬器 107
3.5.11MixedRealityToolkit for Unity 108
3.6本章小結(jié)108
第4章增強(qiáng)名片109
4.1規(guī)劃你的AR開發(fā)109
4.1.1項(xiàng)目目標(biāo) 110
4.1.2 AR 標(biāo)識(shí)111
4.1.3圖像資源 111
4.1.4目標(biāo)設(shè)備與開發(fā)工具113
4.2創(chuàng)建工程(Vuforia) 114
4.3建立圖像標(biāo)識(shí)115
4.3.1在場(chǎng)景中添加圖像標(biāo)識(shí)預(yù)制體•,•115 4.3.2創(chuàng)建標(biāo)識(shí)數(shù)據(jù)庫 115
4.3.3將數(shù)據(jù)庫導(dǎo)入U(xiǎn)nity 117
4.3.4 激活與運(yùn)行117
4.3.5是否啟用擴(kuò)展跟蹤 118
4.4什么是最優(yōu)的標(biāo)識(shí)圖像118
4.5添加對(duì)象120
4.6構(gòu)建與運(yùn)行122
4.7了解大小比例123
4.7.1現(xiàn)實(shí)生活中的大小比例 123
4.7.2虛擬大小比例與Unity 124
4.7.3標(biāo)識(shí)比例與對(duì)象比例125
4. 8無人機(jī)動(dòng)畫126
4.8.1飛行葉片是如何旋轉(zhuǎn)的127
4.8.2添加空閑動(dòng)畫128
4.8.3添加飛行動(dòng)畫 131
4. 8.4連接動(dòng)畫控制器中的片段 134
4.8.5播放、構(gòu)建與運(yùn)行 135
4.9 在iOS設(shè)備上構(gòu)建135
4.9. 1創(chuàng)建工程 135
4. 9. 2添加圖像標(biāo)識(shí)135
4.9.3添加對(duì)象 136
4.9.4構(gòu)建設(shè)置 136
4. 9.5構(gòu)建與運(yùn)行136
4.9.6使用Apple ARKit構(gòu)建與運(yùn)行…… 137
4. 10 在HoloLens設(shè)備上構(gòu)建 138
4.10.1創(chuàng)建工程 138
4.10.2添加圖像標(biāo)識(shí)139
4.10.3添加對(duì)象139
4.10.4構(gòu)建設(shè)置140
4.10.5構(gòu)建與運(yùn)行140
4.11 使用 ARToolkit 構(gòu)建141
4.11.1創(chuàng)建工程 14
4.11.2準(zhǔn)備圖像標(biāo)識(shí)141
4.11.3添加圖像標(biāo)識(shí) 143
4.11.4添加對(duì)象144
4.11.5構(gòu)建與運(yùn)行145
4.12 本章小結(jié)146
第5章AR太陽系147
5.1項(xiàng)目計(jì)劃148
5.1.1用戶體驗(yàn) 148
5.1.2AR 標(biāo)識(shí)148
5.1.3圖像資源 148
5.1.4目標(biāo)設(shè)備與開發(fā)工具149
5.2創(chuàng)建工程150
5. 2.1創(chuàng)建初始工程150
5.2.2設(shè)置場(chǎng)景與目錄文件夾 151
5.2.3使用標(biāo)識(shí)目標(biāo)151
5.2. 4創(chuàng)建一個(gè)太陽系(SolarSystem)
容器153
5.3創(chuàng)建地球154
5. 3.1創(chuàng)建地球模型155
5.3.2旋轉(zhuǎn)地球 156
5.3.3添加音頻 157
5.4場(chǎng)景光照158
5.4.1創(chuàng)建自然光 159
5.4.2 夜晚紋理 159
5.5創(chuàng)建地球■月球系統(tǒng) 160
5.5.1創(chuàng)建容器對(duì)象160
5.5.2創(chuàng)建月球模型 160
5.5.3定位月球 161
5.6Unity C#快速入門 163
5.7月球軌道動(dòng)畫164
5.7.1添加月球軌道164
5. 7. 2添加全球時(shí)間表 166
5.8繞太陽旋轉(zhuǎn)168
5.8.1以太陽為中心,而不是地球 …… 168
5.8.2創(chuàng)建太陽 168
5.8.3地球圍繞太陽168
5.8.4傾斜地球的軸線169
5.9添加其他行星171
5. 9.1使用紋理創(chuàng)造行星 172
5.9.2添加土星環(huán) 173
5.9.3切換視圖 174
5.10 使用 VuMark 標(biāo)識(shí)(Vuforia) …176
5.10.1關(guān)聯(lián)標(biāo)識(shí)與行星 177
5.11 創(chuàng)建主速率UI 179
5.11.1添加UI畫布與按鈕 179
5.11.2時(shí)間事件處理器181
5.11.3觸發(fā)輸入事件 181
5. 12構(gòu)建與運(yùn)行182
5. 12. 1 導(dǎo)出 SolarSystem 軟件包 182
5. 12. 2 發(fā)布到 Android 設(shè)備-Vuforia …… 183
5. 12. 3 發(fā)布到 iOS 設(shè)備-Vuforia 183
5.12.4發(fā)布到 HoloLens 設(shè)備-Vuforia , , , 183
5.12.5構(gòu)建與運(yùn)行 ARToolkit 184
5. 13無標(biāo)識(shí)構(gòu)建與運(yùn)行188
5.13.1 使用ARKit構(gòu)建與運(yùn)行iOS …… 188
5.13. 2 使用 MixedRealityToolkit 在 HoloLens
構(gòu)建與運(yùn)行192
5. 14 本章小結(jié)195
第6章更換漏氣輪胎197
6.1項(xiàng)目計(jì)劃197
6.1. 1 項(xiàng)目目標(biāo) 198
6.1.2用戶體驗(yàn) 199
6.1.3 AR 標(biāo)識(shí)199
6.1.4圖像資源與數(shù)據(jù) 200
6.2軟件設(shè)計(jì)模式201
6.3 創(chuàng)建工程203
6.4創(chuàng)建UI (視圖)204
6.4.1創(chuàng)建說明畫布204
6.4.2創(chuàng)建導(dǎo)航面板205
6.4.3創(chuàng)建內(nèi)容面板209
6.4.4 添加標(biāo)題文本211
6.4.5添加正文文本211
6.5創(chuàng)建說明控制器211
6.5.1用UI連接控制器 213
6.6創(chuàng)建說明數(shù)據(jù)模型213
6.6.1 InstructionStep 類 213
6.6. 2 InstructionModel 類 215
6.6. 3將模型與控制器和U相連216
6. 7加載CSV文件數(shù)據(jù) 218
6.8抽象UI元素 219
6.8. 1 將 InstructionEvent 添加到
控制器219
6.8. 2 重構(gòu) InstructionsController 220
6. 8. 3 定義 InstructionElement 220
6.8.4在Unity中鏈接UI元素 222
6.9添加圖片內(nèi)容222
6. 9. 1將圖片添加到說明Content
面板223
6. 9. 2 將圖片數(shù)據(jù)添加到InstructionStep
模型223
6.9.3將圖片文件導(dǎo)入項(xiàng)目 224
6.10添加視頻內(nèi)容225
6. 10. 1將視頻添加到說明Content
面板225
6.10. 2添加視頻播放器與渲染紋理•••••• 225 6. 10. 3 將視頻數(shù)據(jù)添加到InstructionStep
模型226
6. 11添加滾動(dòng)視圖227
6. 12本章小結(jié)228
第7章AR使用說明書230
7.1 用 Vuforia 創(chuàng)建 AR 項(xiàng)目 231
7.2 在AR模式之間切換232
7.3使用用戶定義標(biāo)識(shí)234
7.3.1添加用戶定義的標(biāo)識(shí)構(gòu)建器•••••• 234
7.3.2添加圖像標(biāo)識(shí)235
7.3.3添加捕捉按鈕236
7.3.4將捕捉按鈕連接UDT捕捉事件 …237
7.4向AR提示添加可視助手 239
7.4. 1添加光標(biāo) 239
7.4.2添加注冊(cè)標(biāo)識(shí)240
7.4.3跟蹤期間刪除AR提示 240
7.4.4保證良好跟蹤效果 243
7.5整合增強(qiáng)的內(nèi)容245
7.5. 1閱讀AR圖像指示 245
7.5.2創(chuàng)建AR的UI元素246
7.5.3 顯示增強(qiáng)圖像247
7.6制作增強(qiáng)圖像247
7.7在AR中包含說明面板252
7.8使用ARKit進(jìn)行空間錨定253
7.8. 1 創(chuàng)建 ARKit 工程254
7.8.2 準(zhǔn)備場(chǎng)景 255
7.8.3全息指導(dǎo)手冊(cè)261
7.9 本章小結(jié)269
第8章基于AR的室內(nèi)裝飾271
8.1項(xiàng)目計(jì)劃272
8. 1. 1 用戶體驗(yàn) 272
8.1.2圖像資源 272
8.1. 3用戶界面元素273
8.1.4 圖標(biāo)按鈕 273
8.2創(chuàng)建工程與場(chǎng)景274
8.2.1創(chuàng)建新的Unity項(xiàng)目 274
8.2. 2 開發(fā) HoloLens 版本275
8.2.3創(chuàng)建默認(rèn)圖片275
8.3關(guān)于混合現(xiàn)實(shí)工具包輸入
管理器277
8.3.1凝視管理器277
8.3.2輸入管理器278
8.4創(chuàng)建工具欄框架279
8.4. 1 創(chuàng)建工具欄279
8.4. 2 PictureController 組件 279
8.4. 3 PictureAction 組件 280
8.4.4 設(shè)置動(dòng)作 281
8.5 Move工具進(jìn)行空間建圖 282
8. 5.1 添加Move按鈕與腳本 282
8.5.2使用空間建圖進(jìn)行定位 284
8.5.3理解表面平面286
8.6使用手勢(shì)識(shí)別器縮放工具287
8. 6.1添加縮放按鈕與腳本288
8.6.2縮放圖片 290
8.7支持取消操作292
8.8抽象選擇菜單UI 293
8.9添加相框菜單295
8. 9. 1在 PictureController 中的
SetFrame 296
8. 9. 2Frame Menu 對(duì)象與組件 297
8.9.3相框選項(xiàng)對(duì)象297
8.9.4激活相框菜單299
8. 9. 5支持在 PictureController 中取消 …299
8. 10添加圖片菜單300
8. 10. 1 在 PictureController 中的
Setimage 300
8. 10. 2Image Menu 對(duì)象與組件301
8.10.3圖像選項(xiàng)對(duì)象 303
8.10.4激活圖片菜單304
8.10.5調(diào)整圖像寬高比 305
8. 11添加與刪除帶相框的圖片306
8. 11. 1 工具欄中的Add與Delete
按鈕306
8. 11.2GameController 307
8. 11. 3 PictureController 中的 Add 與 Delete
命令308
8.11.4處理空?qǐng)鼍?09
8. 12 UI 反饋309
8. 12. 1單擊音頻反饋 309
8.12.2單擊動(dòng)畫反饋310
8.13 使用 ARKit 構(gòu)建 iOS 311
8. 13. 1使用ARKit創(chuàng)建工程與場(chǎng)景…… 312
8.13.2使用觸摸事件代替手勢(shì)313
8. 14 使用Vuforia構(gòu)建移動(dòng)AR 318
8.14.1使用Vuforia創(chuàng)建工程與場(chǎng)景 …318
8.14.2設(shè)置圖像標(biāo)識(shí)319
8. 14. 3 將 DefaultPicture 添加到場(chǎng)
景中319
8.14.4 GameController 320
8.14.5使用觸摸事件代替手勢(shì)320
8.15 本章小結(jié)322
第9章投球游戲324
9.1 游戲計(jì)劃324
9.1.1用戶體驗(yàn) 325
9.1.2游戲組件 325
9.2創(chuàng)建工程326
9.2.1創(chuàng)建初始工程326
9. 2. 2設(shè)置場(chǎng)景與文件夾 327
9.2.3導(dǎo)入 BallGameArt 軟