iOS AR开发基础01 | 开篇,什么是AR?
2018-03-30 本文已影响96人
TankXie
最近公司内部需要做一个AR相关的项目,在学习和研究的过程中,发现成体系的的书籍和文档资料都比较少,于是有了,输出点文字,以飨来者的念头。
市场调研公司Digi-Capital给出的一组数据很值得研究:到2020年,AR / VR行业的总收入将达到惊人的1200亿美元,所以了解一些AR知识也是很有必要的。
思路
这是一个系列文档,整个系列分为三部分:基础、实战和优化。
文章结构图
文章中会采取代码和讲解并行,尽量避免大段代码或者大段文字,尽量做到对初学者友好,后续项目代码会放在GitHub上,您有什么意见可以留言和我沟通!
文章中会用一些英文词汇,首次出现会给出中文翻译,关键词一定要认识,这样方便阅读一些开发者文档。
准备
开发环境准备
ARKit1.5 加入了很多新特性,本系列文章基于的硬件和软件环境如下:
- 手机处理器A9 + (iPhone 6s+)
- Xcode Version 9.3 +
- iOS 11.3 +
就在今日凌晨,苹果发布了正式iOS 11.3 和Xcode 9.3 release版本,所以直接在手机和电脑上更新最新版本就好了!
知识储备
熟悉iOS 开发,本教程所有的代码是基于Swift4编写,有一定的Swift基础最好。
什么是AR
AR,Augmented Reality,增强现实,可以这样理解:
- 通过camera获取的“真实的世界”仍然存在
- 通过对camera获取的真实世界进行分析,把一个虚拟的世界按照某种规则融入到“真实的世界”中,从而在视觉上达到增强的目的
如果构建的世界是一个完全虚拟的,和现实世界无关,那就是VR。
我们接触的AR
Pokémon GO
这款游戏在16年风靡一时,这是一款基于LBS的AR游戏。
Pokémon GO
支付宝AR扫福
这是一个基于图像识别的AR功能。
支付宝扫福
抖音的AR相机
当下很火的抖音里面也集成了AR功能,让拍摄的视频更有趣味。
抖音的AR相机
小结
综上,AR由以下6个部分组成:
- 利用摄像头捕获到的真实世界
- 构建到真实世界的虚拟世界
- 虚拟世界和真实世界融合
- 对真实世界进行追踪
- 对真实世界场景的理解
- 用户和虚拟世界的交互
下一篇将介绍《ARKit开发基本套路和核心API》。