AR/VR/MR,Android开发者可以做些什么?

本文介绍了AR/VR/MR的概念,并以ASUS ZenFone AR为例,探讨了Android开发者如何利用Tango和Daydream技术进行虚拟开发。Tango提供了空间位置感知和深度感知功能,而Daydream则致力于提供优质的虚拟体验。通过Tango和Daydream,开发者可以创建从AR到VR的丰富应用,为用户提供全新的互动体验。
摘要由CSDN通过智能技术生成

AR/VR/MR,Android开发者可以做些什么?

文| 谷歌开发技术专家 (GDE) 杨波 (Alpha)

随着 ASUS 在 CES2017 上宣布了全球第一款同时具有 Tango 和 Daydream 两种能力的 ZenFone AR,终于使得 AR/VR/MR 这些近来全球开发圈内超级热门的词汇可以让我们国内的 Android 开发者直接利用手中的 Android Studio 和方便入手的 Android 设备来进行虚拟开发的探索了!

1. 三种交互

1)AR

增强现实,人眼接受到的光线包括了现实的光和 AR 设备屏幕发出的光,通过人眼的处理能力进行合成,增强现实感。

Phab 2 Pro 就是一款 AR 设备,可以拍摄可爱的小猫或小狗跟小宝宝一起玩的照片而不用担心安全,因为小动物都是虚拟的。

AR/VR/MR,Android开发者可以做些什么?

2)VR

虚拟现在,使用头盔或 Cardboard 完全遮挡住现实的光线,人眼只接受 VR 设备发出的光,跟现实完全隔离。

Oculus Rift, PlayStation VR, Samsung Gear VR 以及 HTC Vive 都属于此类设备。

AR/VR/MR,Android开发者可以做些什么?

3)MR

混合现实,MR 设备自身具有三维坐标感知能力,随着人的移动,虚拟物体的显示也随着变化。

Hololens 属于 MR 设备。

AR/VR/MR,Android开发者可以做些什么?

2. 两大技术

1)Tango (屠龙)

正如 2000 年时 Sumsung 在 SCH-V200 手机上上添加了摄像头,手机开始了睁眼看世界的能力,现在 Tango 摄像头为手机添加了真实三维世界的感知能力。

AR/VR/MR,Android开发者可以做些什么?

简单的讲,Tango 具有以下三大功能:

  • Motion tracking: 我在哪里,空间位置

  • Area learning: 前边有什么,看到什么

  • Depth perception: 前边有多远

AR/VR/MR,Android开发者可以做些什么?

不论是使用 ToF (Time of Flight),通过传感器发出经调制的近红外光,遇物体后反射,传感器通过计算光线发射和反射时间差或相位差,来换算被拍摄景物的距离,以产生深度信息。

AR/VR/MR,Android开发者可以做些什么?

还是结构光计算,通过向检测空间内投射经过编码的激光光斑阵列,对空间进行标定并辅助计算三维空间位置。

AR/VR/MR,Android开发者可以做些什么?

所得到的如下图中的 cloud point 数据,可以看到此时共采集到了 12464 个带有 XYZ 三维坐标的点。

AR/VR/MR,Android开发者可以做些什么?

2)Daydream (倚天)

目的是要让用户得到最好的虚拟体验,通过定义了一组最低的硬件运行效果标准以及为开发者提供易用的 Daydream API,消除了导致用户眩晕的画面延迟,做到最高性价比的虚拟体验。

AR/VR/MR,Android开发者可以做些什么?

3. 硬件

1)Phab 2 Pro

全球第一款消费级的 Tango 设备,使用骁龙 652,4G 内存和 64G 存储,重要的是国内版本和国外版本都具有完整的 Tango 功能。

Android 感知三维世界的 ”眼睛”– Tango 组件:

AR/VR/MR,Android开发者可以做些什么?

AR/VR/MR,Android开发者可以做些什么?

典型的应用场景:

AR/VR/MR,Android开发者可以做些什么?

2)ZenFone AR

全球第一款消费级的 Tango+Daydream 设备,使用骁龙 821 来保证用户得到 Daydream 体验,第一款 Daydream 手机 Google Pixel 和 Asus Zenphone 3 也使用的是骁龙 821。由于 Daydream Viewer 现在兼容的手机尺寸是 5.0 到 5.7 寸屏,那么 ZenFone AR 搭配 Android 7 (Nougat) 的 5.7 寸屏用起来应当是相当顺手的。

AR/VR/MR,Android开发者可以做些什么?

4. Tango开发

首先,你需要一款 Tango 设备,因为还没有可以模拟 Tango 相关摄像头硬件的模拟器,上节中 Phab 2 Pro 是很不错的开发机!

现在以 Java API 开发为例来进入 Tango App 的开发,如果你熟悉 Unity 3D 的开发,就直接用 Unity 3D 的 package,因为 80% 的 Tango App 都是用 Unity 3D 开发的,当然最多的就是游戏啦!

1)环境准备

1. Android Studio 2.2

AR/VR/MR,Android开发者可以做些什么?

2. USB debugging

Phab 2 Pro 开启 Developer option 中的 USB debugging,没有 Developer option,那你肯定是 Android 开发新手,在 Settings->About phone 下连续点击 7 次 Build number 就可以召唤出 Developer option 了。

AR/VR/MR,Android开发者可以做些什么?

2)获取示例代码

git clone https://github.com/googlesamples/tango-examples-java.git

AR/VR/MR,Android开发者可以做些什么?

3)打开 Java Cloud point example

AR/VR/MR,Android开发者可以做些什么?

直接 control + R

AR/VR/MR,Android开发者可以做些什么?

选择 Phab 2 Pro

AR/VR/MR,Android开发者可以做些什么?

如果出现以下错误:

1 Error:Execution failed for task ':app:transformNative_libsWithStripDebugSymbolForDebug'.

2 > java.lang.NullPointerException (no error message)

只需要将 compileSdkVersion 和 targetSdkVersion 的版本号跟 buildToolsVersion 保持一致。

AR/VR/MR,Android开发者可以做些什么?

安装成功

AR/VR/MR,Android开发者可以做些什么?

在手机上可以看到 Cloud point,实时的总点数和点的平均深度。

AR/VR/MR,Android开发者可以做些什么?

4)更多

https://github.com/lvonasek/tango

利用C API对采集到的Point cloud进行处理,实现三维重建的APP。

近似的扫描效果:

AR/VR/MR,Android开发者可以做些什么?

5. Daydream开发

再来重温下 Daydream 的目的,可以简单看到是 Cardboard 的升级版本,但却定义了一个可以满足用户体验的最低硬件标准并开发了一整套API来让开发者可以方便的开发出高质量体验的应用。

同样的 Daydream App 需要一个 Daydream ready 的手机来运行或可以运行 Cardboard apps 且大于 Android 4.4(kitkat) 的手机,这里同样使用 Phab 2 Pro。

使用 Daydream 主要用来完成以下开发任务:

  • Lens distortion correction.

  • Spatial audio.

  • Head tracking.

  • 3D calibration.

  • Side-by-side rendering.

  • Stereo geometry configuration.

  • User input event handling.

1)获取代码

git clone https://github.com/googlevr/gvr-android-sdk.git

AR/VR/MR,Android开发者可以做些什么?

2)Android Studio

打开 gvr-android-sdk

AR/VR/MR,Android开发者可以做些什么?

运行( control + R)sample-sdk-treasurehunt

AR/VR/MR,Android开发者可以做些什么?

选择 Phab 2 Pro

AR/VR/MR,Android开发者可以做些什么?

在手机上配合 Cardboard 或 Daydream Viewer (当然国内的各种盒子也是可以的,由于 Daydream Viewer 自由没有添加计算能力,只是在操作手柄上加了外置九轴惯性测量单元来辅助精确追踪)

AR/VR/MR,Android开发者可以做些什么?

6. 总结

使用 ZenFone AR 和 Daydream Viewer,预计总价不会超过人民币 5000 元,就可以不用拖长长的连接线,也不用再专门配备一个高性能主机,在家里完全自由的沉浸在Google Street View, YouTube, Netflix, Hulu, HBO 以及诸如 Fantastic Beasts , Where to Find Them, Need for Speed 和 Gunjack 2 这些 VR 游戏中,不是安静的坐着,而是 360 度的自由视角。

完美 VR 的硬件和 API 已经准备好了,着手自己的开发计划吧!

作者上期回顾:

Android 无处不在,Android 开发者大有可为

欢迎关注『谷歌开发者』官方微信公众号,与谷歌一起创造未来!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值