标签:
Google VR SDK for Unity Github下载: https://github.com/googlevr/gvr-unity-sdk
Google VR SDK文档: https://developers.google.com/vr/unity/#features
Google APIs for Unity: https://developers.google.com/unity/
本文环境:Unity 5.3.1 x64 + gvr 0.8
1、如果你只需要SDK GoogleVRForUnity.unitypackage 可以参考我的文章:Github 下载单个文件 。当然你clone整个项目也没问题。
2、创建新工程,导入gvr
sdk中有两个Demo,在GoogleVR\DemoScenes\ HeadsetDemo || ControllerDemo 下
HeadDemo
这个demo是gvr的头部运动Demo,在PC上 按住Alt+移动鼠标 模拟头部转动,按住 Ctrl+移动鼠标 模拟头部倾斜
上述两种运动都是 GvrMain\Head 的transform属性在发生改变
当准星选中某个GameObject时,会有一个准星放大缩小的动画,实现代码请看 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下
为什么我场景中的GameObject不能被选中?
答:1. 给Main Camera添加 Physics Raycaster
2. 在Physics Raycaster 的Event Mask 选择要接收事件的 Layer
如何让某个GameObject可以被选中?
答:1. 给该GameObject添加 Collider (可以是BoxCollider,SpereCollider等等)
2. 再给该GameObject添加 Event Trigger (事件触发器)
3. 给该GameObject 绑定事件处理脚本,该脚本中包含以下函数 Enter ,Trigger ,Exit ,具体请实现
如何让我的UI元素显示在3D场景中?
答:1. 以UGUI为例,创建一个简单的UI
2. 修改Cavas 的Render Mode为 Word Space,这样它就可以渲染在世界空间中,而不是渲染在最顶层的屏幕上
3. 调整UI的位置到 Main Camera 视野内
如何接收场景中UI按钮,被玩家点击的事件?
答:1. 创建好UI之后,在Hierarchy视图中找到 EventSystem
2. 给 EventSystem 添加 GazeInputModule
3. 把EventSystem 上的 Standalone Input Module 禁用或 把顺序调整到 GazeInputModule下,或者 Remove它
4. 给UI按钮 绑定事件处理脚本,该脚本中包含以下函数 Enter ,Trigger ,Exit ,具体请实现
如何把左右两屏显示变成普通的显示
答: 在GrvMain 的GvrViewer 组件中,不勾选 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/
[Gvr]Google VR SDK for Unity 简单分析
标签:
原文地址:http://www.cnblogs.com/zhaoqingqing/p/5537988.html