目录
基础篇

第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性能优化与设备兼容性

参考文献