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

简介:

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

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

三种交互

AR

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

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

VR

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

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

MR

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

Hololens 属于 MR 设备。 

两大技术

Tango (屠龙)

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

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

  • Motion tracking: 我在哪里,空间位置
  • Area learning: 前边有什么,看到什么
  • Depth perception: 前边有多远  

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

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

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

Daydream (倚天)

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

硬件

Phab 2 Pro

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

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

典型的应用场景:  

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 寸屏用起来应当是相当顺手的。

Tango 开发

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

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

环境准备

1. Android Studio 2.2  

2. USB debugging

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

获取示例代码

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

打开 Java Cloud point example 

直接 control + R  

选择 Phab 2 Pro 

如果出现以下错误:

 
 
  1. Error:Execution failed for task ':app:transformNative_libsWithStripDebugSymbolForDebug'
  2.  
  3. > java.lang.NullPointerException (no error message)  

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

安装成功  

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

更多

https://github.com/lvonasek/tango

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

近似的扫描效果: 

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    

Android Studio

打开 gvr-android-sdk 

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

选择 Phab 2 Pro  

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

总结

使用 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 已经准备好了,着手自己的开发计划吧!





作者:Alpha Yang
来源:51CTO
目录
相关文章
|
6月前
|
设计模式 测试技术 vr&ar
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除(三)
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除
|
6月前
|
人工智能 机器人 区块链
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除(二)
提升你的Android开发技能:从AR/VR沉浸到UI设计和故障排除
|
5天前
|
定位技术 vr&ar Android开发
AR与VR在安卓开发中的应用案例
【4月更文挑战第14天】AR和VR技术在安卓开发中日益普及,改变生活和工作方式。AR应用于导航、教育、零售,如AR导航、解剖学教学工具和虚拟家居预览。VR则创造虚拟环境,用于游戏、旅游和健身,如VR游戏“Beat Saber”、虚拟旅游和VR健身应用。这些技术在医疗、房地产等领域也展现潜力,未来将有更多创新应用出现,开发者应关注并探索其可能性。
|
2月前
|
数据可视化 安全 vr&ar
VR vs AR到底谁更有潜力改变未来?
VR vs AR到底谁更有潜力改变未来?
29 0
|
3月前
|
人工智能 物联网 vr&ar
AR与VR技术的融合:开启全新的现实体验
在当今快速发展的科技领域中,混合现实(AR)和增强现实(VR)技术成为引人注目的热门话题。本文将探讨AR与VR技术的融合应用,以及它们给我们带来的全新现实体验。通过结合虚拟和真实世界的元素,AR与VR技术正逐渐改变着我们对于交互、娱乐、教育和工作的理解。
|
12天前
|
编解码 数据可视化 vr&ar
干货! 2023 VR/AR行业全貌深度剖析!
干货! 2023 VR/AR行业全貌深度剖析!
|
4月前
|
存储 数据处理 vr&ar
实时云渲染技术为何被称为VR和AR领域的加速剂?
实时云渲染技术为何被称为VR和AR领域的加速剂?
|
4月前
|
运维 安全 vr&ar
VR和AR引领的工业元宇宙:数字化革命的引擎
VR和AR引领的工业元宇宙:数字化革命的引擎
|
5月前
|
vr&ar
VR和AR的区别
VR和AR的区别

热门文章

最新文章