Google Play Services for AR可以简称为谷歌arcore,它的功能与苹果旗下的ARKit非常相似,但是这款软件是专门为安卓用户们打造的,通过该软件可以帮助安卓用户搭建增强现实应用,并且它将利用云软件和设备硬件来将各种各样的数字对象放到现实世界中,如果将它运用在游戏中,玩家们可以体验到更加真实的ar效果,仿佛真的置身于游戏世界中一般。

Google Play Services for AR宣传图

应用功能

1、支持各种款式的手机,操作简单也方便。

2、能够在设备上增加AR图片效果,效果非常棒。

3、感知环境,能够精准的浮现现实的生活场景。

4、增强现实的感受,还能够增加自己的一些小创意。

5、增加你的现实感,让数字世界和现实世界完美融合。

6、能够全方位照顾场景,给用户一个不一样的炫酷场景。

应用功能配图1

应用特色

1、环境感知

感知平面,比如你面前的桌子、地面,在虚拟空间中准确复现这个平面。

2、动作捕捉

使用手机的传感器和相机,ARCore 可以准确感知手机的位置和姿态,并改变显示的虚拟物体的位置和姿态。

3、光源感知

使用手机的环境光传感器,感知环境光照情况,对应调整虚拟物体的亮度、阴影和材质,让它看起来更融入环境。

使用教程

1、使用即时展示位置

点按屏幕以放置对象。在屏幕上显示全息对象后,请确保继续来回移动设备,以便ARCore可以获取有关周围环境的足够数据,从而准确锚定虚拟对象。

一旦ARCore检测到Surface几何图形,并在放置对象的区域确立了可跟踪对象,对象姿势便会自动进行更新。

使用教程配图1

在图1中,Instant Placement已停用,且Surface几何图形未定义。位于台球桌右侧地板上的对象(四个小蓝点)出现翻转状态,其姿态则未定义。

在图2中,从齿轮图标下的菜单启用了Instant Placement。

在图3中,在启用Instant Placement功能后,场景中放置了一个新对象。它以灰度模式显示,而非彩色显示,表示系统尚未将其更正为正确的姿势。

在图4中,当检测到Surface几何图形(由可跟踪的网格线描述)时,新对象会变为彩色,并且其姿势准确无误。

2、使用深度

启用深度后,ARCore会考虑场景中对象的几何图形和位置,并计算场景中对象相对于场景中其他对象的位置。它可让场景中的对象遮挡住对象,并让您的应用具有真实感。

使用教程配图2

在图1中,深度已停用。一个对象会放在池表下。

在图2中,当设备在池表中移动时,无论场景中的物体是什么,该对象看起来都跟随设备。

在图3中,启用了深度。

在图4中,当设备在场景中移动时,对象现在被池表遮挡。

入门攻略

1、设置您的开发环境

安装 Android SDK Platform 7.0(API 级别 24)或更高版本的 Android Studio 3.1 版或更高版本。

2、打开示例项目

(1)在 Android Studio 中,克隆 ARCore SDK GitHub 代码库。

为此,您可以采用多种方式:

对于现有的 Android Studio 安装:

从 Git 菜单中选择 Clone。

在 Version control 下拉菜单中,选择 Git 作为版本控制系统。

在 URL 字段中,输入 ARCore GitHub 代码库的网址

(2)按如下方式打开一个示例项目(您必须明确打开一个项目才能构建并运行该项目)。

从 File 菜单中选择 Open。

在 arcore-android-sdk/samples 文件夹中,选择 hello_ar_kotlin 或 hello_ar_java 文件夹,然后点击 Open。

3、准备设备或模拟器

您可以在受支持的设备或 Android 模拟器上运行 AR 应用。您必须先在模拟器上更新 AR 服务的 Google Play 服务,然后才能运行该应用。

4、运行示例

确保您的 Android 设备已连接到开发机器,然后点击 Android Studio 中的 Run 。

Android Studio 将您的项目构建为可调试的 APK,安装该 APK,然后在您的设备上运行该应用。

如果适用于 AR 的 Google Play 服务缺失或已过期,系统可能会提示您安装或更新。选择 CONTINUE 可从 Google Play 商店安装它,或按照更新 AR 版 Google Play 服务中的说明手动更新该应用。

借助 hello_ar_java 应用,您可以在检测到的 AR 平面上放置一个三维 ARCore 典当。它通过 Android GL SurfaceView 实现,Android GL SurfaceView 用于渲染相机预览和基本 AR 对象,例如平面和锚点。可以在 com/google/ar/core/examples/java/common/samplerender 中找到 hello_ar_java 的示例渲染框架。

入门攻略配图1

注意:hello_ar_java 中的生命周期方法与 OpenGL 应用中通常提供的生命周期方法不同。为确保您自己的应用的 AR 设置正确无误,请遵循 hello_ar_java 中的生命周期管理逻辑。

5、使用即时展示位置

借助 Instant Placement API,用户可以将 AR 对象置于屏幕上,而无需等待 ARCore 检测表面几何图形。随着用户继续在环境中移动,系统会实时优化对象放置位置。一旦 ARCore 能够在放置 AR 对象的区域中检测到正确的姿态,白色对象便会自动更新为姿态准确,并变为不透明。

hello_ar_java 中会自动启用 Instant Placement。点按屏幕上的齿轮图标,然后从下拉菜单中选择 Instant Placement。您应该已经选中 Enable Instant Placement 复选框。

点按屏幕以放置对象。在屏幕上显示全息对象后,请务必继续来回移动设备,以便 ARCore 可以获取关于周围环境的足够数据来准确锚定虚拟对象。

常见问题

1、为什么打开应用后黑屏或闪退?

因为AR需要相机权限,所以应用没有检查权限时会发生异常退出。如果相机权限已打开,则是应用自身问题。

2、为什么虚拟物体容易飘或平面长时间识别不出来?

因为AR需要现实环境有一些图案特征,如果手机的摄像头朝着洁白的墙壁、纯色的地面等会无法工作,所以AR物体容易飘。

3、为什么安装了ARCore,应用仍提示安装ARCore?

因为手机安装的ARCore版本低于应用需要的ARCore版本,所以ARCore仍然提示安装。虽然ARCore没有图形界面,但可以在系统设置的应用列表中找到ARCore,查看版本号和卸载旧版本。

4、为什么很多应用一开始要拿着手机扫描地面?

因为AR需要一个水平面来固定虚拟物体,地面和桌面是比较好的水平面,所以要先扫描地面。但在地面固定虚拟物体不是唯一的方式,还可以在图像上固定、在空间固定、点击屏幕固定。

5、ARCore反复提示“已停止运行”并且无法工作?

部分机型安装了1.8版,ARCore会反复提示“已停止运行”。若出现该问题,请更换成稳定的1.7版或最新版本的ARCore。

更新内容

v1.53.260340183:

面向 AR 的 Google Play 服务会在符合条件的设备上自动安装和更新,这样 Google Play 商店中具备 AR 功能的应用日后无需另外下载和安装任何补充内容,即可正常运行。

此版本的新变化:

支持的设备的更新列表。

v1.43.240930483:

Google Play Services for AR会自动安装和更新到符合条件的设备上,因此Google Play Store中具有AR功能的应用程序无需下载和安装任何进一步的内容即可运行。

本版本新增功能:

•更新了支持的设备列表。

下载地址

远程下载