猜你喜欢
AR与VR开发实战

AR与VR开发实战

书籍作者:张克发 ISBN:9787111553304
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:4107
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
本书旨在为AR和VR程序开发者提供全面的参考资料,要求读者具备C#及Unity3D的基础知识,书中包含大量真实案例,操作步骤详尽,代码清晰。本书适用于高校计算机相关专业学生学习AR及VR技术,同时也适用于企业开发人员。
作者简介
张克发,毕业于烟台大学软件工程学院,曾在杭州、上海等地参与多款大型游戏的开发,擅长Android开发、Unity 3D、Node.js等技术,有丰富的AR、VR开发经验,曾主导开发多款AR、VR产品。目前担任ARinChina(增强现实中国)教育事业部总监,以及北京加速想象力教育咨询有限公司CTO。

  赵兴,毕业于西安邮电大学数学系,擅长Unity 3D开发与算法研究,目前在ARinChina担任AR、VR开发工程师。

  谢有龙,在ARinChina担任AR、VR开发工程师,擅长HTC Vive、Hololens等AR、VR技术。
前言
增强现实(Augmented Reality)简称AR,是一种实时计算摄像机捕捉到的现实影像的位置及角度并加上相应虚拟信息的技术。这种技术不仅能展现真实世界的信息,还能通过增加虚拟信息而对现实世界进行增强,所以称为增强现实。AR可应用于军事、医疗、工业、教育等众多领域,随着硬件性能的提升和软件解决方案的日趋成熟,AR产品将越来越多地走入人们的视线。
  虚拟现实(Virtual Reality)简称VR,它通过计算机图形系统以及多种传感器控制设备将人带入虚拟世界中,并与虚拟世界产生各种交互,具有强烈的沉浸式体验。VR将在游戏、影视、城市规划、室内设计、地产、教育等多个领域为人们提供更加真实、震撼的全新体验。
  随着AR和VR技术的飞速发展,由此产生的众多应用场景将需要大量技术人才,尤其是程序设计人才。本书的目的是为程序开发者提供全面、权威的参考资料,并附有大量真实案例,详细讲解AR、VR开发的流程和步骤。
  本书分为两大部分,第一部分是“AR开发”,共12章:
  第1章简要介绍AR技术的概念和常用的AR解决方案。
  第2章主要介绍基于Vuforia SDK的应用开发。
  第3~9章主要介绍AR项目中常见的案例以及实现方法,例如透明视频、AR对战游戏、涂色类产品等。
  第10章重点讲解国内AR解决方案HiAR SDK的开发。
  第11章简要介绍其他AR SDK的使用。
  第12章简要介绍AR创建工具“找趣”的使用。
  第二部分是“VR开发”,共6章:
  第13章简要介绍VR技术的概念和主流的VR设备。
  第14章主要介绍基于Google Cardboard开发VR应用。
  第15章主要介绍HTC Vive的常用功能及其实现。
  第16、17章通过案例方式讲解基于HTC Vive的项目开发。
  第18章简要介绍目前市场上的其他VR设备及相关技术。
  本书专注于AR和VR开发,因此不过多涉及编程语言的基础知识及引擎的使用方法,阅读本书需要先掌握C#编程技术,并能够熟练使用Unity 3D引擎。如果你没有C#和Unity的使用经验,那么在阅读本书之前需要先学习相关技术。
  在编写本书的过程中,我们得到了亮风台科技、克科技、RealMax等企业的技术支持和宝贵意见,在此表示衷心的感谢。感谢ARinChina CEO张明军提供的优质平台与宝贵资源,感谢ARinChina同事董艳超、张荣为本书的出版辛苦奔波,感谢ARinChina站长赵亮、ARinChina技术论坛版主赵忠立提供高质量的技术支持,感谢付旭耀提供美术支持。最后,特别感谢ARinChina工程师赵兴、谢有龙、陈家豪、常壮等同事,他们在本书编著过程中付出了无数汗水。
  本书是非常好的AR和VR入门教程,适用于高校计算机相关专业学生学习AR和VR技术,同时由于书中附有大量案例,所以同样适用于企业开发人员。如果你在项目中遇到相似的需求,或许也可以从本书中获取一些灵感和帮助。
  如果本书能为你的学习或工作带来帮助和提升,将是我们莫大的荣幸。真诚希望本书的读者给我们更多的反馈和意见,帮助我们取得更大的进步和成长。在阅读本书的过程中若有疑问,欢迎加入本书QQ群进行交流,我们会在群里提供本书的所有资源和相关工具。
  作者2016年9月
目录
前言
作者简介
第一部分
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