Gvr SDK for Unity 分析(1)

Gvr SDK概述

经过谷歌VLacrosse SDK for unity 为Android和iOS 营造虚拟现实应用程序

unity SDK在Android上支撑创设应用程序for daydream 和
cardboard。对于iOS你只能为cardboard营造应用程序。

google V奥迪Q5 SDK要求unity5.二.1或更加高版本。

正文更新于:二〇一四-0陆-20

Gvr 大旨作用

  • 底部跟踪
  • 并排立体展现(模拟人的左右眼)
  • 空间音频rendering
  • 检查测试用户与系统的并行(通过接触或调控器)
  • 自动化配置 vr 设备参数,或提供新鲜布署
  • 立体图像失真纠正
  • 当你的手提式有线电话机插入到V奥迪Q5 设备时,准星自动聚焦在帮扶中央
  • 自动陀螺漂移勘误

英文原版:https://developers.google.com/vr/unity/#features

Gvr 附加功用

  • 在Unity编辑器中模拟头部活动,按Alt或Ctrl 实行移动
  • 对两样的V宝马X三设备,提供相似的视线(Control the approximate 田野同志 of
    view regardless of differences in V奥迪Q7 viewer configurations)
  • 根据相机定焦成效V奇骏-safe的章程,即包容头追踪
  • 恰本地帮忙画中画窗口,所以在调控荧屏的岗位,失真校对后仍可知
  • 动态调节 stereo level(立体水平) 以调整和减弱眼疲劳
  • 很轻松地规定用户注视的趋势,例如,射线检查评定
  • 与Canvas UI 成分交互,能够通过眼神和触发器
  • 动用同2个代码函数,处理触发和分界面点击检查评定
  • 协理Image Effects(图像效果)和 Deferred
    Rendering(延迟渲染),或绕过那以充实援救FPS。

英文原版:https://developers.google.com/vr/unity/#features

有备无患干活

GVR SDK for Unity 下载: 
https://github.com/googlevr/gvr-unity-sdk 

GV昂Cora 在线文书档案https://developers.google.com/vr/unity/#features

Google APIs for Unity: https://developers.google.com/unity/ 

本文环境:Unity 5.3.1 x64 + gvr 0.8

搭建环境

壹、假如你只供给SDK文件(谷歌V牧马人ForUnity.unitypackage)
能够参照:Github
下载单个文件
 
。当然你也能够clone整个项目

2、成立新工程,导入gvr package

Demo分析

sdk中有多个德姆o,在谷歌V昂科威\DemoScenes\HeadsetDemo ,GoogleVR\DemoScenes\ControllerDemo

HeadDemo

本条demo是gvr模拟的头顶活动的德姆o,操作方法:在PC上 按住Alt+移动鼠标
模拟底部转动,按住 Ctrl+移动鼠标 模拟底部倾斜

上述三种运动都以 GvrMain\Head 的transform属性在发出改变

当条件选中有个别GameObject时,会有3个标准放大减弱的动画片,达成代码请看
HeadDemo\Teleport.cs

 

ControllerDemo

此demo大约是通过一而再手提式有线话机来决定,完毕代码请看ControllerDemo\ControllerDemoManager.cs

 

答疑

规范:笔者是平素采取GvrMain.prefab,文中的Main
Camera是指:GrvMain\Head\Main Camera

 

情景中尚无规则?

答:把GoogleVr\Prefabs\UI\GvrReticle.prefab 拖动到
GrvMain\Head\Main Camera

图片 1

 

此情此景中的GameObject不能被选中?

答:1. 给Main Camera添加 Physics Raycaster

       2. 在Physics RaycasterEvent Mask 选拔要吸收事件的
Layer

图片 2

 

何以让有个别GameObject能够被入选?

答:1. 给该GameObject添加 Collider
(可以是BoxCollider,SpereCollider等等)

       2. 再给该GameObject增加 伊夫nt Trigger (事件触发器)

       叁. 给该GameObject 绑定事件处理脚本,该脚本中隐含以下函数 Enter
,Trigger ,Exit ,具体请实现

图片 3

 

如何让UI成分展现在3D场景中?

答:1. 以UGUI为例,创设贰个大致的UI

       2. 修改Cavas 的Render ModeWord
Space
,那样它就可以渲染在世界空中中,而不是渲染在最顶层的显示器上

       叁. 调动UI的岗位到 Main Camera 视野内

 

如何接收场景中UI开关的点击事件?

答:1. 开立好UI之后,在Hierarchy视图中找到 EventSystem

        2. 给 EventSystem 添加 GazeInputModule

        3. 把EventSystem 上的 Standalone Input Module 禁止使用或
把各样调控到 GazeInputModule下,或许 Remove它

        四. 给UI开关 绑定事件处理脚本,该脚本中涵盖以下函数 Enter
,Trigger ,Exit ,具体请达成

 

什么撤除左右两屏显示成1般的呈现

答: 在GrvMainGvrViewer 组件中,不勾选 VR Mode Enable

 

参考资料

How to Make a VR Game With Unity and Google Cardboard

英文原版:https://www.raywenderlich.com/116805/make-vr-game-unity-google-cardboard

中文翻译:http://www.tairan.com/archives/10636/

相关文章