ARFoundation之路-概述

(一)、什么是ARFoundation

  2017年,Apple公司与Google公司相继推出了各自的AR开发SDK工具包ARKit和ARCore,分别对应iOS平台与Android平台AR开发。ARKit和ARCore推出后,极大的促进了AR在移动端的普及发展,将AR从实验室带入到普通消费场景中。由于当前的移动手机操作系统主要由iOS与Android两大系统统治,ARKit和ARCore分别服务于各自己的系统平台,这意味着软件产商要开发一套移动AR应用就必须使用ARKit开发一个iOS版本、使用ARCore开发一个Android版本,这无疑增加了开发时间与成本。
  ARCore提供了Android、Android NDK、Unity、Unreal开发包,ARKit官方只提供了Xcode开发包,这也提高了利用其他工具进行开发的开发者学习成本。在这种情况下,Unity构建了一个AR开发平台,这就是ARFoundation,这个平台架构于ARKit和ARCore之上,其目的就是利用Unity的跨平台能力构建一种与平台无关的AR开发环境,换句话说,ARFoundation对ARKit与ARCore进行了再次封装,并按照用户的发布平台自动选择合适的底层SDK版本。

  因此,ARFoundation是ARKit XR插件(com.unity.xr.arkit)和ARCore XR插件(com.unity.xr.arcore)的集合,虽然最终都使用ARKit SDK和ARCore SDK,但因为Unity再次封装的缘故,与专业平台(如ARKit插件和ARCore SDK for Unity)相比,C#调用的API略有不同。
  ARFoundation的目标并不局限于ARKit与ARCore,它的目标是建成一个统一、开放的AR开发平台,因此,ARFoundation极有可能在下步发展中纳入其他AR SDK,进一步丰富AR开发环境。在进一步的发展中,ARFoundation不仅支持移动端AR设备,还会支持穿戴式AR设备开发。
  从上面的描述我们也可以看出,ARFoundation它并不提供AR的底层开发API,这些与平台相关的API均由第三方如ARKit与ARCore提供,因此ARFoundation对某特定第三方功能的实现要比原生的晚(ARFoundation将某第三方SDK的特定功能集成需要时间)。

在这里插入图片描述

(二)、ARFoundation与ARCore、ARKit的关系

  ARFoundation提供了一个独立于平台的脚本API和MonoBehaviour,因此,开发者可以通过ARFoundation使用ARCore和ARKit共有的核心功能构建同时适用于iOS和Android两个平台的AR应用程序。换句话说,这可以让开发者只需开发一次应用,就可以部署到两个平台的设备上,不必做任何改动。
  如前所述,ARFoundation实现实现某底层SDK的功能会比原生的晚,因此,如果我们要开发ARFoundation尚不支持的功能,可以单独使用对应的原生SDK。目前,如果我们只面向ARCore进行开发并希望获取完整的功能集,Google为Unity开发提供了ARCore SDK for Unity;如果只面向ARKit进行开发并希望获取完整的功能集,Unity提供了适用于Unity开发的ARKit插件(Apple并未提供Unity的ARKit SDK开发插件,在ARFoundation发展起来以后,Unity肯定不会再继续维护ARKit插件)。
  ARFoundation与ARCore、ARKit的关系如下图所示:
在这里插入图片描述
  ARFoundation与ARCore、ARKit的区别如下表如示:

 

(三)、ARFoundation支持的功能

  ARFoundation与ARCore、ARKit都正处于快速发展中,ARCore基本保持每两个月进行一次更新频率,ARKit也已经迭代到了ARKit3.0,作为ARKit与ARCore上层的ARFoundaion也已经到了v2.2版。
  但如前文所说,ARFoundation功能的实现要比底层的原生API稍晚一些,下表展示了ARFoundation,ARCore和ARKit功能对比和开发路线图。

 

  AR应用是计算密集型应用,对计算硬件要求较高,就算在应用中什么虚拟对象都不渲染,AR也在对环境、特征点跟踪进行实时解算。由于移动端硬件设备资源限制,一些高级AR应用只能在最新的处理器(包括CPU和GPU)上才能运行。同时得益于Apple强大的独立生态与软硬件整合能力,在ARKit3中推出了很多新功能,但由于Android系统碎片化严重,ARCore预计要等到新版Android发布后才能提供类似的功能。

参考文献

1、Unity’s Handheld AR Ecosystem Unity’s Handheld AR Ecosystem

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值