一、什么是ARFoundation?
在ARFoundation诞生之前,如果我们需要开发一个多平台的AR应用,会使用 ARCore XR Plugin 开发一个Android设备版本,使用 ARKit XR Plugin 开发一个iOS设备版本。由于底层API的不同,这样我们就需要同时维护多份代码,这无疑增加了我们工作量和开发成本。因此Unity利用其跨平台的优势,开发了一个与平台无关的AR开发工具包,将 ARCore XR Plugin 、ARKit XR Plugin、Magic Leap XR Plugin、Windows XR Plugin 等AR开发工具包,进行了二次封装,统一API,只需要写一份代码就可以发布到多平台,它会根据我们发布的平台自主选择底层SDK。Unity将这个AR开发工具包命名为“ARFoundation”。
二、AR Foundation历史事件
- 2018年10月Unity发布AR Foundation 1.0版本,支持平面追踪、特征点云检测、参考点/锚点、设备追踪、光照估计、射线碰撞。
- 2019年5月,AR Foundation 2.1 支持图像追踪、物体追踪、面部追踪、环境探针。
- 2019年6月,AR Foundation 3.0 支持 ARKit 3.0,新增动作捕捉、人物遮挡、多人协作等功能。
- 2019年9月[MOU1] ,AR Foundation 支持 Magic Leap 以及 HoloLens 1 和 2 。
- 2019年11月,SenseAR正式集成进了Unity中国增强版2018.4.11C版本中。
三、ARFoundation核心功能
| 支持功能 | AR Foundation | ARCore | ARkit |
| 垂直平面检测 | √ | √ | √ |
| 水平平面检测 | √ | √ | √ |
| 特征点检测 | √ | √ +支持特征点姿态 | √ |
| 光照估计 | √ | √ +Color Correction | √ + Color Temperature |
| 射线测试(Hit Testing) | √ | √ | √ |
| 图像跟踪 | √ | √ | √ |
| 动态加载识别图 | - | √ | √ |
| 3D物体检测与跟踪 | √ | - | √ |
| 环境光探头(Environment Probes) | √ | - | √ |
| 世界地图(World maps) | √ | - | √ |
| 人脸跟踪(识别、姿态、网格和形状混合) | √ | √ | √(iPhoneX 及更高型号) |
| 云锚点(Cloud Anchors) | √ | √ | - |
| 远程调试(Editor Remoting) | - | √-Instant Preview | √ -ARKit Remote |
| 模拟器(Editor Simulation) | √ | - | - |
| LWRP支持(支持使用ShaderGraph) | √ | - | - |
| 摄像机图像API | √ | √ | - |
| 人体动作捕捉(Motion capture) | √ | - | √(iPhoneXR 及更高型号) |
| 人形遮挡(People occlusion) | √ | - | √(iPhoneXR 及更高型号) |
| 多人脸检测 | √ | - | √(iPhoneX 及更高型号) |
| 多人协作(Collaborative session) | √ | - | √(iPhoneX 及更高型号) |
| 多图像识别 | √ | √ | √(iPhoneX 及更高型号) |
推荐学习资料
2.Unity官方API:学习一门技术,官方教程是最权威的
3.ARFoundation Samples :ARFoundation 示例地址
欢迎对AR技术感兴趣的朋友,加入QQ群:883655607 讨论