打开文件>项目设置…

选择“Android”作为你的平台(选择它然后点击“Switch Platform”)

“纹理压缩”选择“ASTC”技术(Oculus 开发者中心文档推荐该技术)

然后点击“玩家设置”会在右边弹出其他设置窗口

在这些设置中,点击 Android 标签(如果之前你已经选择“Android”作为项目平台的话,这个选项应该已经被选择状态,但还是应该检查一遍)

最重要的一步是——勾选“Virtual Reality Supported”。如果你已经搭建过其他平台的项目,这一选择尤为重要,因为容易忽略。我在 Google Cardboard 老的 SDK 和 Gear VR 开发之间切换时,有很多次都忘记了这个复选框。如果忘记选择且项目导出之后,那就很麻烦了。

在“Virtual Reality SDKs”选项下面,点击“+”按钮并增加“Oculus”。以上的设置同样适用于开发 Oculus Rift 项目时 
,这一步的目的是可以共享之前的设置。

正确的设置如图所示:

需要 Oculus 签名文件

在运行 App 时,看到 Gear VR 报“thread priority security exception make sure the apk is signed”这样的错误时,这意味着你的手机无法看到你的 Unity 项目的 Oculus 签名文件。

这并不是很难生成,但如果你经常使用 Google Cardboard App 或在项目开发中期更换手机时,这一点也容易被忽视掉!App 之所以需要一个 Oculus 签名文件,是因为其可以授予运行 VR 相关事宜的手机权限。

“所有 Gear VR 应用程序必须在开发期间使用 Oculus 签名文件(osig)进行签名,以便在移动设备上访问低级别 VR 功能。这个签名是以一种 Oculus 发出文件的形式。“——Oculus 官方文档

另外还可以使用 Oculus 签名文件(osig)生成器生成 OSIG 文件。它们提供了如何为你特定手机生成文件的完整详细信息,其过程只需确保使用 USB 连接电脑。

一旦从该生成器上下载文件后,将其添加到项目的Project /Assets/Plugins/Android/assets/文件夹中。

无须将手机放置在 Gear VR 头显中进行测试

原来可以在手机上的 Gear VR 服务中启用开发者模式,这样无须连接到头显设备就可以运行 Gear VR App。

为此:

将带有 OSIG 文件的应用程序安装到手机上;

然后打开手机的 Settings > Application Manager;

找到并打开“Gear VR Service”;

在较新版本的 Android(Android 7.0 Nougat 及更高版本)系统上,点击“Storage”;

点击“Manage Storage”;

一直点击“VR Service Version”,直到出现“Developer Mode”的隐藏选项;

打开“Developer Mode”选项;

然后点击“Add icon to app list”,这样就可以在应用程序列表中找到“Gear VR 服务”轻松地打开和关闭开发者模式。

未连接到 PC 时,如何查看 Gear VR App 日志?

这是一个有趣的问题——当你配戴 Gear VR 头显时,无法查看日志。手机无法同时连接到 Gear VR 头显与 PC 。因此,该如何查看日志呢?这个很简单,你可以使用无线网连接手机日志。

1.使用相同 Wi-Fi 连接手机与电脑; 
2.通过 USB 接口将手机连接到电脑; 
3.手机 TCP/IP 连接端口 5555。打开电脑的 command (Mac 上 Terminal),然后键入以下内容:

adb tcpip 5555

4.输入之后应该显示成功,例如我的电脑显示:

"hljs applescript">* daemon not running. starting it now on port 5037 *
* daemon started successfully *
restarting in TCP mode port: 5555

5.此时可以移除你的手机; 
6.连接到手机,需要其 IP 地址。你可以在 Settings > About tablet (or About phone) > Status > IP address 找到。 
7.知道 IP 地址后,你可以使用终端命令连接到它:

"hljs cs">adb connect (that IP address you just found out)

例如,如果 IP 地址为 192.168.13.37:

adb connect 192.168.13.37

8.如下所示,则连接成功:

connected to 192.168.13.37:5555
adb devices

如下所示,则连接成功:

List of devices attached
192.168.13.37:5555 device

10.然后查看该手机的日志:

adb logcat

11.以上命令会显示你的手机上的每一个日志!这样会有太多的日志了,那么可以过滤一下:

adb logcat -s Unity

如果以上步骤没有显示你想要的日志,根据 Unity 论坛上的答案也许能帮到你捕获更广泛的日志信息:

"hljs bash">adb logcat -s Unity ActivityManager PackageManager dalvikvm DEBUG

12.最后命令行还是乱起八糟的?我知道这种感受。事实证明 Android Studio 可以有一个更清晰的视图来显示手机日志另外还可以实时过滤日志!为此,我只是在 Android Studio 中创建一个空白项目,然后使用在界面底部的“Android 监视器”。其中有一个过滤器框,你可以键入像“Unity”,就能够立即日志过滤:

无须改变 Android Manifest 文件

在调试和修复一些 bug 时,我去编辑了 manifest 文件…但这并非是正确的做法。其实 Unity 会自动更新:

“在构建过程中,VR 支持的 Unity 项目能使用自动生成的 manifest 进行打包,并可以满足我们的需求来配置(通过landscape orientation、 vr_only 等等)。” —— Unity官方文档

在 Unity 播放器内不容易测试,获取 DK2?

在 Unity 编辑器中其实不能直接点击 Play 按钮,然后测试你的 App。相反,你必须每次都上传到手机上,这可能让你很烦。这里有一个解决方法,但是不一定适用每个人,即使用一个 Oculus DK2。

如果你有一个备用的 Oculus DK2,你可以把它连接到你的计算机然后进行快速测试,而不需要导出整个项目。只需插入 DK2,然后按一些 play 按钮即可!

请记住,在 Gear VR 上所呈现的未必就是很真实的,还是需要根据你自己想要的测试:

“Android 应用程序的渲染路径与用于 Rift 应用程序预览和构建的渲染路径大不相同,最大的不同在于外观和感觉以及性能上。” —Oculus 官方文档

注意 Unity 5.5.2 版本

目前 Unity(在撰写本文时) 最新稳定版本为 Unity 5.5.2,然而在 VR 模式下使用该版本运行成功,但导出 Gear VR 项目出现了一些问题。如果你发现在 VR 中 App 有问题且之前所有的设置正确的,那么尝试使用 Unity 5.5.1 版本,看看是否可以正常运行。

Unity开发Gear VR app走过的弯路VR开发心得相关推荐

  1. 文档看得太迷糊?使用Unity开发增强现实/虚拟现实应用(AR/VR APP) 书籍和文档的阅读心得

    自己上手开发了两三个AR APP之后,用Unity进行AR/VR APP开发算是入了门.反思一下自己使用过的资料. 技术书籍 一开始是找比较新的技术书籍看,因为直接看文档有些难度. 对于有Unity基 ...

  2. android studio的GearVR应用开发(二)、一个简单的VR app(Oculus官方GearVR开发教程,翻译转载)

    声明:本文是Oculus官方的GearVR开发教程,为本人翻译转载,供广大VR开发爱好者一同学习进步使用. 原文章 一个简单的VR app 概观 在搭建好GearVR框架后,让我们一起来创建第一个VR ...

  3. Inventor 二次开发 - Gear Up Inventor 分享 Inventor 二次开发 的资料和经验

    关注并订阅Autodesk地理信息解决方案相关技术博客赢取Autodesk权威开发专家编写的官方推荐教材!! 送书啦!送书啦!20本<Autodesk地理信息系统解决方案--FDO.MapGui ...

  4. Mendix快速开发网页移动App低代码化平台

    Mendix快速开发网页移动App Mendix简介 中州软件开发园 一.什么是Mendix Mendix是一个轻量化开发工具,我们可以写较少的代码来快速构建一个应用(网站/app):其实所谓的构建一 ...

  5. 探索使用 Unity 开发 Gear VR App 遇到的坑

    原文: What you need to know when building a Gear VR app in Unity 作者: Patrick Catanzariti [CSDN 有奖征稿啦]技 ...

  6. 【三星官方教程】如何为Gear VR 开发应用(一):开发环境搭建

    原始标题: 三星GearVR已经成为第一个成熟的移动VR平台,并拥有目前全球最大也是最稳定的移动VR用户群体.基于GearVR的应用越来越多,本文将为开发者介绍如何用Unity为Gear VR开发一个 ...

  7. Unity VS Unreal: 哪个更适合AR/VR开发?

    之前三次方有比较过关于Unity与Unreal(深度分析 | Unity和Unreal的比较),主要是从宏观角度(偏游戏应用)来分析的,对于ARVR开发,到底选择哪一个好?使用两个引擎分别开发的代表性 ...

  8. 那些年移动互联网行业曾经走过的弯路

    移动互联网行业逐渐成为热门的创业首选行业,众多的创业者涌入这个即将成为巨大金矿里面掘金.现在就让51资金项目网小编带你一起看看移动互联网的前辈们走过的弯路,站在巨人的肩膀上获得更大的成功几率. 1.产 ...

  9. 11月VR AR投资现状,游戏开发和行业应用受资本青睐

    回顾十一月的VR AR投资情况,其中游戏和行业应用占据大头. 虽然最近几个月一直都在说资本寒冬的问题,但是国内外还是有很多VR/AR公司获得资本的青睐. 回顾刚刚过去的11月,我们盘点了一下VR/AR ...

最新文章

  1. 大中型网站集群架构企业级高标准全自动实战项目征集
  2. 启动Activity的两种方式startActivity和startActivityForResult(一)
  3. 64位Win7安装Oracle12C临时位置权限错误解决方案
  4. 拷贝带隐藏目录的所有文件 到另外一个目录指令
  5. tf.assign() 更新ref通过给它重新赋值
  6. CV卷得厉害,研究机器学习还能做什么?
  7. 7zip和winrar命令行备份
  8. 【LeetCode】【字符串】题号:*14. 最长公共前缀
  9. 用Javascript实现随机抽奖
  10. SCTP客户/服务器程序
  11. 机器学习与深度学习入门篇
  12. 要注意工作中邮件的正式性
  13. Git设置代理服务器
  14. 怎么查询oracle归档模式,查看oracle数据库归档模式
  15. matlab app designer学习笔记1——简易计算器
  16. 【微信红包】恭喜发财,大吉大利
  17. C++读取局域网内其他计算机共享文件夹的文件
  18. 三大web服务器比较
  19. php八字喜用神实现博客,八字喜用神,一定要注意
  20. 业绩不稳的永信至诚,能稳坐国内网络靶场的头把交椅吗?

热门文章

  1. 火云开发课堂 - 《使用Cocos2d-x 开发3D游戏》系列 第一节:3D时代来临!
  2. Unity 在代码中 动态改变RectTransform位置及宽高 的方法整理
  3. socket网络程序设计实验一,通过域名查询IP/gethostbyname(基于python3.7、PyQt5)
  4. 用公众号给女朋友推送早安问候(恋爱值♥♥♥♥♥)
  5. GL GLU GLUT的关系
  6. Scala的隐式转换详解
  7. sklearn 的 knn 用法
  8. 【极简壁纸】简单高效美观的壁纸网站 1
  9. 难道说:没有梦想的生活是平庸
  10. msmtp详细安装及使用