本书旨在为AR和VR程序开发者提供全面的参考资料,要求读者具备C#及Unity3D的基础知识,书中包含大量真实案例,操作步骤详尽,代码清晰。本书适用于高校计算机相关专业学生学习AR及VR技术,同时也适用于企业开发人员。
前言
作者简介
第一部分
AR开发
第1章 AR技术简介 / 2
第2章 基于Vuforia SDK开发AR应用 / 4
2.1 准备Vuforia开发环境 / 4
2.2 创建Vuforia案例 / 7
2.3 创建AR视频 / 14
2.4 文字识别 / 15
2.5 柱形识别 / 18
2.6 立方体识别 / 21
2.7 3D物体识别 / 24
2.8 云识别 / 26
2.9 智能地形 / 29
2.10 虚拟按钮 / 33
2.11 帧标记识别 / 37
2.12 自定义目标识别 / 40
第3章 AR内容交互 / 46
3.1 动态加载AR模型 / 46
3.2 模型脱卡功能的实现 / 50
3.3 手势控制 / 53
第4章 AR互动大屏:透明视频的实现 / 57
4.1 使用AE制作带Alpha通道的视频 / 57
4.2 编写可播放透明视频的Shader / 59
4.3 开启摄像头并实现互动大屏的视频播放 / 64
第5章 AR动画:AR与Flash动画的结合 / 68
5.1 准备GAF插件 / 68
5.2 实现动画播放 / 69
5.3 用AR方式实现扫描 / 70
第6章 AR游戏开发:卡牌对战 / 71
6.1 多图识别生成模型 / 71
6.2 卡牌对战功能的实现 / 74
第7章 涂色类AR开发 / 87
7.1 UV的概念 / 87
7.2 使用Photoshop绘制涂色的识别图 / 88
7.3 使用3D Max处理模型的UV / 89
7.4 搭建Vuforia AR开发环境 / 94
7.5 核心功能之通过C#脚本获得变量 / 96
7.6 核心功能之通过C#脚本向Shader传递变量 / 101
7.7 在Unity中完善项目 / 104
第8章 使用陀螺仪模拟SLAM功能 / 106
8.1 SLAM的概念 / 106
8.2 模拟SLAM功能的实现 / 106
第9章 Unity与原生代码之间的交互 / 110
9.1 Unity与Android原生代码之间的交互 / 110
9.2 Unity与iOS原生代码之间的交互 / 115
第10章 使用HiAR SDK开发AR应用 / 123
10.1 搭建开发环境 / 123
10.2 导入SDK / 124
10.3 创建HelloWorld / 126
10.4 导出Android工程 / 130
10.5 导出iOS工程 / 135
10.6 使用本地识别包 / 137
10.7 开发云识别应用 / 140
10.8 制作云识别内容 / 143
10.9 创建视频AR应用 / 147
10.10 使用HiAR创建涂色类AR应用 / 149
10.11 多图识别 / 152
10.12 动态加载 / 154
10.13 设置场景中心点 / 156
第11章 其他AR SDK简介 / 159
11.1 基于Wikitude SDK开发AR应用 / 159
11.2 基于VoidAR SDK开发AR应用 / 163
第12章 AR创建工具:找趣(realcast)浏览器 / 178
12.1 什么是找趣 / 178
12.2 找趣后台 / 178
12.3 创建场景 / 181
12.4 制作场景 / 183
12.5 如何使用找趣 / 187
12.6 管理场景/项目 / 187
12.7 事件交互的定义 / 189
12.8 模型动画的播放 / 191
第二部分
VR开发
第13章 VR技术简介 / 194
第14章 基于Google Cardboard开发VR应用 / 197
14.1 Cardboard SDK for Unity环境配置 / 197
14.2 利用Cardboard创建VR场景 / 200
14.3 Cardboard中GUI的设置 / 201
14.4 Cardboard中3D物体的选取 / 203
14.5 Cardboard中凝视触发操作的实现 / 204
14.6 Cardboard中全景相册的实现 / 209
14.7 Cardboard中全景视频播放的实现 / 211
第15章 基于HTC Vive开发VR应用 / 214
15.1 Vive设备的安装 / 214
15.2 搭建Vive开发环境 / 217
15.3 创建Vive游戏场景 / 218
15.4 Vive中的手柄交互 / 220
15.5 功能开发之扳机键(Trigger) / 225
15.6 功能开发之触摸板(Touchpad) / 228
15.7 功能开发之功能键(ApplicationMenu) / 230
15.8 功能开发之手柄振动(TriggerHapticPulse) / 230
15.9 功能开发之瞬移(Teleporter) / 231
15.10 功能开发之左右侧键(Grip) / 236
15.11 功能开发之The LabRenderer / 237
第16章 基于HTC Vive实现房间漫游 / 239
16.1 准备工作 / 239
16.2 基本平台搭建 / 239
16.3 导入房间模型 / 240
16.4 基于Vive手柄的场景移动 / 241
16.5 基于Vive手柄的场景旋转 / 244
16.6 手柄与场景物体的交互 / 245
第17章 基于HTC Vive开发投篮游戏 / 250
17.1 准备素材 / 250
17.2 场景搭建 / 250
17.3 导出与运行 / 264
第18章 其他VR设备简介 / 266
18.1 Oculus VR简介 / 266
18.2 GearVR简介 / 267
18.3 大朋VR简介 / 268
18.4 PSVR简介 / 269