▲Google 展示 ARCore 1.2!
5 月 8 日凌晨, Google I/O 大会举行, Daydream 产品经理 Nathan Martz 带来了最新的 AR 软件开发工具包新版本ARCore 1.2。
了解到,最新版本有三大重要更新:支持多人共享 AR 的 Cloud Anchors 、新增垂直平面识别的 Augmented Images 、基于 Java 的全新 SDK Sceneform 。
2018 年 2 月, Google 正式发布 Android 平台的增强现实软件工具开发包 ARCore 1.0 ,支持 13 款安卓旗舰手机,具备和苹果 ARKit 1.0 类似的三大功能:水平平面检测、运动跟踪和光照估计。
1.0 版本的 ARKit 和 ARCore 都只是基础版,今年 1 月苹果带来了 ARKit 1.5 ,增加了垂直平面识别,能更准确识别不规则物体表面。虽然命名为 ARCore 1.2 , Google 带来的更新显然超过 ARKit 1.5 。
ARKit 是什么?
ARKit 是一系列新的 iOS 开发工具,用途是让搭载 A9 以上 SoC 的 iOS 装置,可以透过相机镜头,在真实画面中看到虚拟对象,比如在自己的办公桌看到宝可梦。虽然技术严格来说不新,就是靠着相机拍来的影像,搭配 M 系列运动协处理器整合的数据进行多层坐标定位,然后再靠着高效能的 GPU 搭配苹果自己开发的 Metal API,在相机影像上实时渲染。苹果把这项技术称作「Visual Inertial Odometry」。
首先是 Cloud Anchors 。 ARCore 通过识别平面特征并创建稀疏点云来实现运动追踪。 Cloud Anchors 可以将这些信息存储在 Google 云中,并为开发者提供该信息的 ID 。该 ID 可以与其他用户共享,这样的话可以比较两个私人点云并将 AR 对象黏在同一地点。
苹果推出 ARKit 时,曾在大会上演示过多人 AR 游戏,不过其没有将复杂的实现方式公开。很多业内人士也告诉,多人 AR 游戏是促进 AR 内容发展的关键点。
有意思的一点是, Cloud Anchors 还部分支持 ARKit 。 Google 为 iOS 设备建立了一个图书馆,其 Cloud Achors 的数据库可以在 ARKit 上运行。在 iOS 上,系统将使用所有内置的 ARKit 功能,如运动追踪和环境评估,并将这些数据同步到云端。假设开发人员为两种平台构建相同的赢咖4平台,则无论您使用的是哪种平台,都可以在 Android 和 iOS 之间同步 AR 数据以共享体验。
然后是 Augmented Images 。 Google 更新了一项名为 Augmented Images 的功能,这个功能新增了垂直平面识别。例如,在下图中,你可以通过识别产品垂直包装面,以 AR 的方式呈现出包装内的产品。
Augmented Images 是一项新功能,类似于以前的 AR 扫描和 QR 码,它是一个通用的图像识别系统,用手机摄像头指向对象就可以启动 AR 体验。
开发人员可以为其赢咖4平台指定多达 1,000 个 2D 图像,从而使 ARCore 能够检测诸如产品框或电影海报之类的东西,而不会出现笨重的方形 AR 标记。
这个功能的商业场景很广泛,例如让电影海报、广告传单、产品组装说明更生动等。
最后,全新的 SDK Sceneform 。 Sceneform 是一个旨在帮助 Java 开发人员创建场景的新版 SDK 。
因为 AR 需要 3D 对象的显示,这就要求 AR 开发者俱备游戏开发者的能力,会使用 Android NDK , OpenGL 和像 Unity 这样的游戏引擎,这对于 Android 的 2D Java 开发人员来说可能有点令人望而生畏。
Sceneform SDK 是一个 Android Studio 插件和 API ,允许开发人员轻松创建 AR 体验,而无需处理整个 3D 开发堆栈。
Sceneform 包含大量常见的 3D 用户界面小部件,因此用户可以选择对像或移动事物,而无需开发人员重新造轮子。
什么是 SDK ?
软件开发工具包(Software Development Kit, SDK)一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
它或许只是简单的为某个程序语言提供赢咖4平台编程接口的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于侦错和其他用途的实用工具。SDK还经常包括范例代码、支持性的技术批注或者其他的为基本参考数据澄清疑点的支持文件。