ARCore是谷歌推出的AR平台,其全称为Google Play Services for AR 。这一平台能与苹果的ARKit比肩,主要目的是助力开发者打造AR应用。它凭借智能手机的摄像头,把虚拟内容和真实世界融合起来,达成对虚拟内容在现实世界中位置的认知与追踪。依靠ARCore以及与之兼容的移动设备,开发者能够让用户通过智能手机感受到三维动画。要留意的是,ARCore属于用于构建增强现实应用的Android SDK,是开发人员在桌面上无法看到的系统组件。
arcore基本功能介绍
ARCore是谷歌推出的增强现实体验构建平台。它借助各类不同的API,使手机得以感知所处环境、认知现实世界,并与相关信息展开互动。其中部分API在Android和iOS系统上均可使用,以此达成共享AR体验。
ARCore运用三个主要功能,把虚拟内容与借助手机摄像头所看到的现实世界进行整合:
1. 通过动作跟踪技术,手机能够知晓并追踪自身相对于外界的位置。
2、依靠环境理解功能,手机能够探测各类表面(像地面、咖啡桌或者墙壁等水平、垂直以及倾斜表面)的尺寸与位置。
3、通过光估测功能,手机能够对当前环境的光照条件进行估测。
arcore工作原理
本质而言,ARCore 主要进行两件事:在移动设备移动过程中追踪其位置,并构建自身对现实世界的认知。
ARCore运用的运动跟踪技术,借助手机相机去识别那些有意思的点(也就是所谓的特征点),并且对这些点随时间推移所产生的变化进行跟踪。通过把这些点的移动情况与手机惯性传感器的读数相结合,当手机移动时,ARCore就能确定手机的位置与方向。
ARCore 除了能够确定关键点,还会对诸如桌子或地面这类平坦表面进行检测,并估算周围区域的平均光照强度。这些功能相互配合,使得 ARCore 能够构建其对周边世界的认知。
依托 ARCore 对现实世界的认知,您能够以一种与现实世界完美融合的方式来放置对象、添加注释或展示其他信息。比如,您可以在咖啡桌的一角放上一只正在打盹的小猫,又或者依据艺术家的生平信息为一幅画作添加注释。移动跟踪功能让您能够随意移动并从任何角度去查看这些物体,哪怕您转身走出房间,等您回来后,小猫或者注释依然会处于您离开时它们所在的位置。
arcore快速入门
若要在Android设备上开启使用ARCore,您可运行ARCore SDK所附带的hello_ar_kotlin或hello_ar_java示例应用程序。这些示例应用运用了OpenGL,它是一种专门用于渲染2D及3D矢量图形的编程接口。这些应用程序能够展示检测到的所有平面,而且还允许用户通过点击平面来放置3D模型。
1. 对您的开发环境进行设置
安装Android Studio 3.1版或更高版本,以及Android SDK Platform 7.0(API级别24)或更高版本。
2、打开示例项目
(1)于Android Studio内,克隆ARCore SDK GitHub代码库。
基于此,您能够运用多种途径:
针对已有的Android Studio安装情况:
在Git菜单里挑选Clone。
在“Version control”的下拉菜单里,挑选Git作为版本控制系统。
请在URL字段内,输入ARCore GitHub代码库的下述网址:
这是一个链接:https://github.com/google-ar/arcore-android-sdk.git ,它指向了谷歌AR(Google AR)相关的安卓软件开发工具包(Android SDK)在GitHub上的代码仓库地址。
(2)以下面的方式打开一个示例项目(要构建并运行该项目,您必须明确打开一个项目)。
在File菜单里选取Open。
在arcore-android-sdk/samples目录里,挑选hello_ar_kotlin文件夹或者hello_ar_java文件夹,接着点击Open。
3、备好设备或模拟器
要运行AR应用,您可在受支持的设备或者Android模拟器上进行操作。不过,在模拟器上运行该应用之前,您得先更新模拟器上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的示例渲染框架。
注意: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就能获取足够的周围环境数据,从而准确锚定虚拟对象。
ARCore常见问题解析
1. 为何打开应用后会出现黑屏或闪退的情况?
应用出现异常退出,原因在于AR需要相机权限,若应用未检查权限就会如此。而要是相机权限已经开启,那便是应用自身存在问题。
2. 为何虚拟物体容易出现飘动情况,或者平面长时间无法被识别呢?
AR的运行依赖现实环境存在一定的图案特征,当手机摄像头对准洁白的墙壁、纯色的地面这类场景时,它便无法正常工作,这就导致AR物体容易出现飘动现象。
3、为何已安装ARCore,应用却依旧提示安装ARCore呢?
ARCore之所以仍提示安装,是由于手机所安装的ARCore版本低于应用所需版本。尽管ARCore不存在图形界面,不过在系统设置的应用列表里能够找到它,进而查看版本号并卸载旧版本。
4、为何许多应用在初始阶段需要手持手机扫描地面呢?
由于AR需要借助一个水平面来固定虚拟物体,而地面与桌面是较为理想的水平面,因此需先对地面进行扫描。不过,在地面固定虚拟物体并非是唯一的途径,还能够在图像上固定、于空间中固定或者通过点击屏幕来固定。
5、ARCore老是提示“已停止运行”,而且无法正常工作该怎么办?
在部分机型上,若安装的是1.8版ARCore,会反复收到“已停止运行”的提示。要是遇到此问题,建议更换为稳定的1.7版ARCore,或者选择安装最新版本的ARCore。
arcore特色
- 我们运用了三项关键技术,以达成虚拟内容与现实世界的整合:
运动跟踪技术使得手机能够感知并追踪自身在所处环境中的相对位置。
-借助环境理解技术,手机能够探测到诸如地表、咖啡桌这类扁平的水平面。
光照强度估测技术能够对当下环境的光照状况进行估量。
arcore点评
ARCore不能单独开启运行,需与游戏配合使用。
arcore评分:(5分)
(新版本)软件功能:4.1
软件使用:4.5
应用内容:4.7
工具流畅:4.8
arcore其他版本
用户评论
最新评论
- 置顶 河北承德电信 网友 敷衍
好东西值得分享
- 置顶 山东菏泽联通 网友 星星少女?
凡事要乘早
- 置顶 甘肃定西电信 网友 东风寄千愁
谢谢小编大大分享,支持一下。。。
- 置顶 河南开封电信 网友 等过春秋
这软件好用,奥力给
- 置顶 云南保山联通 网友 一米阳光°几度温暖
成功下载&成功使用