Unity Oculus VR (Gear VR) | 创建APP

准备工作:

Unity 4.6或以上免费版本即可:http://unity3d.com/unity/download

安卓SDK、JDK 1.7

VR 随便找一个Unity的Demo,SDK里面也有:https://developer.oculus.com/downloads/#sdk=mobile

demo_ovr_01

VR设备一台,需要拿设备ID去换取一个文件:无此文件无法打包:https://developer.oculus.com/osig/  并且按照官方的说法,将此文件放到以下目录

  • For Unity apps, place the signature file in:
    Project/Assets/Plugins/Android/assets/

Unity项目名称、公司设置 搞好; Unity菜单: File→Build Settings. 选择Android and GLES 3.0 textures.

以上准备完成,自选一个场景即可打包进行测试。场景中都自带了摄像机旋转的脚本。


深入解析:

一般情况下,把你的主摄像机改成OVRCameraRig 这个Prefab,代码上稍微处理一下不难架接。

这里主要是讲讲里Gear VR 设备上的几个键位的调用,随便建一个脚本:(本用的Unity 4.7版本,直接把SDK Source下载了下来,然后在里面的3个UnityDemo任选了一个进行研究)

OVRTouchpad 是自带的脚本,以上的按键对应着VR设备边上的几个按钮,可以在里面写事件。在这里值得一说的是NGUI不能直接使用。

这脚本的实现方法其实挺2B的,如果你是一个追根溯源的人,可以去看看源代码。在这里的评论只代表我自己的使用感受。

VR左右两个摄像头带来的渲染成本也是加倍的,并且我没找到可以在PC的Unity 连Gear VR直接测试的方法,所以我每次都得单独打包到设备上进行测试。

打包出来的效果还是很好,这应该是硬件的原因。

综上,对GearVR几个不好的地方:

  1. 第三方UI(如NGUI)不兼容
  2. 用户输入的接口只有当用户手指松开时响应,效率并不是太高
  3. 没有USB测试的方法
  4. 没有设备相当于无法打包

后话:

VR行业路途漫漫,本人在一次开发者大会(忘记是哪个大会了)的NVIDA 的展台里面体验VR,里面那台主机设备比电脑主机还大,游戏是以星球大战为背景,个人玩的感觉还是不错,毕竟画面画质比起低端产品相差甚远,这么一个高端设备,在你10分钟的体验之后,也会觉得眼睛胀痛。

插一张GMIC会议一位日本人的PPT:

demo_ovr_02

个人认为:VR的发展方向应该是成人领域;像游戏、电影等都不会适合它,我对VR未来5年的形势并不看好