ARKit 原生開發入門精粹 — RealityKit + Swift + SwiftUI

ARKit 原生開發入門精粹 — RealityKit + Swift + SwiftUI

作者: 汪祥春
出版社: 清華大學
出版在: 2021-02-01
ISBN-13: 9787302567479
ISBN-10: 7302567476
裝訂格式: 平裝
總頁數: 314 頁





內容描述


本書採用RealityKit框架,對ARKit原生開發進行了全面深入的探究,從ARKit技術原理、理論脈絡到各功能技術點、設計原則、性能優化,對AR應用開發中涉及到的技術進行了全方位的講述,用語通俗易懂,闡述深入淺出。 本書共分三個部分:第一部分為基礎篇,包括第1章到第3章,從最基礎的增強現實概念入手,簡述了ARKit、RealityKit技術體系結構、基本使用環境、運動跟蹤原理、重要技術術語、基本功能點等基礎知識,本篇立意高屋建瓴,帶領讀者一覽ARKit全貌,形成整體印象;第二部分為功能技術篇,包括第4章至第12章,對ARKit各個功能技術點進行了全面深入的剖析,在講述功能點時,特別註重技術的實際應用,每一個功能點都配有詳盡的可執行代碼及代碼的詳細說明;第三部分為提高篇,包括第13章和第14章,主要從高層次對AR開發中的原則及性能優化進行講解,提升開發人員對AR開發整體把握能力。 本書結構清晰、循序漸進、深淺兼顧,實例豐富,每個技術點都有案例,特別註重對技術的實際運用,力圖解決讀者在項目開發中面臨的難點問題,實用性強。 本書適合ARKit初學者、iOS開發人員、程序員、科研人員,也可以作為高校、大專院校相關專業師生的學慣用書,以及培訓學校的培訓教材。


目錄大綱


目錄
基礎篇
第1章ARKit基礎
1.1增強現實技術概述
1.1.1AR概述
1.1.2AR技術
1.1.3AR技術應用
1.2AR技術原理
1.2.1位置追蹤
1.2.2視覺校準
1.2.3慣性校準
1.2.43D重建
1.3ARKit概述
1.3.1什麽是ARKit
1.3.2ARKit功能
1.3.3ARKit支持的設備
1.3.4ARKit的不足
1.4ARKit原理
1.4.1ARKit三大基礎能力
1.4.2ARSession
1.4.3ARAnchor
1.4.4ARFrame
1.5RealityKit概述
1.5.1RealityKit主要功能
1.5.2RealityKit體系架構
1.6ARKit初體驗
1.7調試AR應用
第2章RealityKit基礎
2.1運動跟蹤原理
2.1.1ARKit坐標系
2.1.2ARKit運動跟蹤分類
2.1.3ARKit運動跟蹤
2.1.4ARKit使用運動跟蹤的註意事項
2.2ARSession管理
2.2.1創建ARSession
2.2.2ARConfiguration
2.2.3設備可用性檢查和權限申請
2.2.4ARSession生命周期管理與跟蹤質量
2.3ARSession執行流
2.4平面檢測
2.5射線檢測
2.5.1ARKit中的射線檢測
2.5.2射線檢測實例
2.6手勢檢測
2.6.1手勢檢測定義
2.6.2ARKit中的手勢檢測
2.7ARCoaching
2.8RealityKit中的事件系統
2.9LiDAR傳感器
2.9.1場景幾何
2.9.2虛擬物體放置
2.9.3動作捕捉與人形遮擋
2.9.4場景模擬
2.10Depth API
2.11AR截屏
2.12基於位置的AR
2.12.1技術基礎
2.12.2實踐
第3章渲染基礎
3.1材質紋理
3.2網格
3.3模型
3.4動畫
3.5RealityKit渲染
3.5.1立方體貼圖
3.5.2PBR渲染
3.5.3清漆貼圖
功能技術篇
第4章圖像與物體檢測跟蹤
4.12D圖像檢測跟蹤
4.1.1圖像檢測跟蹤基本操作
4.1.2檢測圖像使用的配置
4.1.3圖像跟蹤優化
4.23D物體檢測跟蹤
4.2.1獲取參考物體空間特徵信息
4.2.2掃描獲取物體空間特徵信息的註意事項
4.2.33D物體識別跟蹤基本操作
第5章人臉檢測跟蹤
5.1人臉檢測基礎
5.1.1人臉檢測概念
5.1.2人臉檢測技術基礎
5.2人臉檢測配置
5.2.1人臉網格
5.2.2掛載虛擬元素
5.3BlendShapes
5.3.1BlendShapes基礎
5.3.2BlendShapes技術原理
5.3.3BlendShapes使用
5.4同時開啟前後攝像頭
第6章光影特效
6.1光照
6.1.1光源
6.1.2光與材質的交互
6.1.3光照模型
6.1.4RealityKit中的光源
6.2光照估計
6.2.1光照一致性
6.2.2ARKit中的光照估計
6.3環境反射
6.3.1環境探頭
6.3.2環境反射操作
6.3.3性能優化
第7章肢體動作捕捉與人形遮擋
7.1ARBodyTrackingConfiguration配置
7.22D人體姿態估計
7.2.1人體骨骼關節點檢測
7.2.2使用2D人體姿態估計
7.33D人體姿態估計
7.3.13D人體姿態估計基礎
7.3.23D人體姿態估計實例
7.4人形遮擋
7.4.1人形遮擋原理
7.4.2人形遮擋實現
7.5人形提取
第8章持久化存儲與多人共享
8.1AR錨點
8.1.1錨點概述
8.1.2使用錨點
8.1.3使用錨點的註意事項
8.2持久化存儲與共享體驗技術基礎
8.2.1initialWorldMap屬性
8.2.2isCollaborationEnabled屬性
8.3ARWorldMap
8.3.1ARWorldMap概述
8.3.2存儲與加載ARWorldMap
8.3.3通過網絡傳輸ARWorldMap
8.4協作Session
8.4.1協作Session概述
8.4.2協作Session實例
8.4.3協作Session使用事項
8.5RealityKit同步服務
8.5.1RealityKit同步服務機制
8.5.2使用RealityKit同步服務事項
第9章物理模擬
9.1物理引擎
9.2RealityKit中的物理組件
9.2.1PhysicsBodyComponent組件
9.2.2PhysicsMotionComponent組件
9.2.3CollisionComponent組件
9.3物理模擬實例
9.4觸發器與觸發域
9.5自定義物理實體類
第10章Reality Composer
10.1Reality Composer主要功能
10.2內容操作
10.2.1錨點選擇
10.2.2控制場景錨定類型
10.2.3添加資源
10.2.4修改資源
10.2.5操作資源
10.3與AR應用整合
10.3.1利用Xcode自動生成的代碼加載場景
10.3.2手動加載場景
10.4行為交互
10.4.1觸發器
10.4.2動作
10.5代碼交互
10.5.1場景對象操作
10.5.2添加程序性資源
10.6導出USDZ
第11章3D文字與音視頻
11.13D文字
11.23D音頻
11.2.13D聲場原理
11.2.2RealityKit中的3D音效
11.33D視頻
第12章USDZ與AR Quick Look
12.1USDZ概述
12.1.1USD
12.1.2USDZ
12.2USDZ文件轉換
12.2.1USDZ Tools
12.2.2Reality Converter
12.2.3USD Unity插件
12.3AR Quick Look概述
12.4App應用中嵌入AR Quick Look
12.5Web網頁中嵌入AR Quick Look
12.5.1選擇支付樣式
12.5.2顯示自定義文字按鈕文件
12.5.3自定義顯示文字
12.5.4自定義顯示條目
12.5.5自定義條目高度
12.5.6事件處理
12.6使用AR Quick Look的註意事項
提高篇
第13章設計原則
13.1移動AR帶來的挑戰
13.1.1用戶必須移動
13.1.2要求手持設備
13.1.3要求必須將手機放在臉前
13.1.4操作手勢
13.1.5用戶必須打開App
13.2移動AR設計準則
13.2.1有用或有趣
13.2.2虛擬和真實的混合必須有意義
13.2.3移動限制
13.2.4心理預期與維度轉換
13.2.5環境影響
13.2.6視覺效果
13.2.7UI設計
13.2.8沉浸式交互
13.3移動AR設計指南
13.3.1環境
13.3.2用戶細節
13.3.3虛擬內容
13.3.4交互
13.3.5視覺設計
13.3.6真實感
第14章性能優化
14.1移動平臺性能優化基礎
14.1.1影響性能的主要因素
14.1.2AR常用調試方法
14.2移動設備性能優化
14.3性能優化的一般流程
14.4RealityKit優化
14.4.1降低CPU使用
14.4.2降低GPU使用
14.5RealityKit渲染測試
14.6性能優化與設備兼容性
參考文獻


作者介紹


汪祥春,計算機科學與技術專業碩士,全國信標委計算機圖形和圖像處理及環境數據表示分技術委員會虛擬現實與增強現實標準工作組成員,中國增強現實核心技術產業聯盟成員,曾在中國人民解放軍某部從事部隊信息化軟件開發研製,現從事AR技術研發及管理工作。
擁有深厚的軟件工程專業背景,省部級科技項目實施管理經驗,CSDN博客專家。
擁有十餘年軟件開發及項目管理經驗,100餘萬行代碼開發量積累,著有《基於Unity的ARCore開發實戰詳解》《AR開發權威指南——AR Foundation》。




相關書籍

MPLS Configuration on Cisco IOS Software (Paperback)

作者 Umesh Lakshman Lancy Lobo

2021-02-01

Android : How to Program, 2/e (IE-Paperback)

作者 Harvey & Deitel Paul Deitel

2021-02-01

iOS Forensics for Investigators: Take mobile forensics to the next level by analyzing, extracting, and reporting sensitive evidence

作者 Tiepolo Gianluca

2021-02-01