Gvr SDK for Unity 分析(一)

简介:



Gvr SDK概述

通过谷歌VR SDK for unity 为Android和iOS 构建虚拟现实应用程序

unity SDK在Android上支持构建应用程序for daydream 和 cardboard。对于iOS你只能为cardboard构建应用程序。

google VR SDK要求unity5.2.1或更高版本。

本文更新于:2016-06-20

Gvr 核心功能

  • 头部追踪
  • 并排立体呈现(模拟人的左右眼)
  • 空间音频rendering
  • 检测用户与系统的交互(通过触发或控制器)
  • 自动化配置 vr 设备参数,或提供特殊配置
  • 立体图像失真校正
  • 当你的手机插入到VR 设备时,准星自动聚焦在帮助中心
  • 自动陀螺漂移校正

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

Gvr 附加功能

  • 在Unity编辑器中模拟头部运动,按Alt或Ctrl 进行运动
  • 对不同的VR设备,提供相似的视野(Control the approximate field of view regardless of differences in VR viewer configurations)
  • 遵守相机变焦效果VR-safe的方式,即兼容头跟踪
  • 恰当地支持画中画窗口,所以在调整屏幕的位置,失真校正后仍可见
  • 动态调整 stereo level(立体水平) 以减少眼疲劳
  • 很容易地确定用户注视的方向,例如,射线检测
  • 与Canvas UI 元素交互,可以通过目光和触发器
  • 使用同一个代码函数,处理触发和界面点击检测
  • 支持Image Effects(图像效果)和 Deferred Rendering(延迟渲染),或绕过这以增加支持FPS。

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

准备工作

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

GVR 在线文档: 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 package

Demo分析

sdk中有两个Demo,在GoogleVR\DemoScenes\HeadsetDemo ,GoogleVR\DemoScenes\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

image

 

场景中的GameObject不能被选中?

答:1. 给Main Camera添加 Physics Raycaster

       2. 在Physics Raycaster 的Event Mask 选择要接收事件的 Layer

image

 

如何让某个GameObject可以被选中?

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

       2. 再给该GameObject添加 Event Trigger (事件触发器)

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

image

 

如何让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/



本文转自赵青青博客园博客,原文链接:http://www.cnblogs.com/zhaoqingqing/p/5537988.html,如需转载请自行联系原作者
相关文章
|
前端开发 Linux 开发工具
Unity Metaverse(四)、接入环信IM SDK 实现用户登录注册
Unity接入环信IM SDK,实现用户登录与注册功能。
195 1
Unity Metaverse(四)、接入环信IM SDK 实现用户登录注册
|
开发工具 图形学
Pico SDK在Unity中如何控制移动
Unity导入Pico SDK后如何进行实际开发呢?想必大家都很好奇。从去年的省赛到今年的国赛, 本人研究Pico有快一年了,刚开始学习的时候自己翻过很多的博主文章,都没有找到自己想要的知识,从那时起,我便下定决心,等国赛过后 自己要写写虚拟设备的使用了,那就以我的视角来为大家讲解Pico SDK的正确使用。
603 1
Pico SDK在Unity中如何控制移动
|
开发工具 vr&ar 图形学
Pico SDK导入Unity工程
2022VR国赛即将开始,对于Pico与Unity的使用已经很熟练了,想为下一届参赛选手及Unity 3D引擎爱好者或者是Pico开发者 聊一下自己的理解,目前Unity引擎的主流打包平台设备就是Pico和Steam VR,我参加的国赛采用的是Pico设备,所以今天就先讲一下Pico
546 0
Pico SDK导入Unity工程
|
XML Java 语音技术
Unity -Demo 之 ✨ 语音识别-讯飞SDK使用过程
因为工作需求,现在要选择连接一个语音识别功能接入系统中,所以目前正在尝试使用讯飞的语音识别SDK进行连接。 在使用语音识别的sdk之前先查阅了一下语音识别的基本知识 然后去讯飞的官网注册信息并创建一个应用用于使用SDK 基本步骤处理完了,下面就是下载SDK进行集成使用了,我这里用的是语音唤醒的SDK,按照官方教程做就行。教程在这-语音唤醒SDK教程 当上面这几步做完了之后,接下来就是将这个工程打包成给unity使用的aar包了。可以参考这个教程:将Android Studio的工程打包成aar包给unity使用
|
移动开发 JSON 缓存
钉钉消息机器人.Net通用C#Unity实现钉钉消息通知一个工具类(无需SDK,无其他引用)
钉钉消息机器人.Net通用C#Unity实现钉钉消息通知一个工具类(无需SDK,无其他引用) Chinar —— 心分享、心创新! 助力快速完成 .Net 通用的钉钉Post机器人消息通知 为初学者节省宝贵的时间,避免采坑! 官方文档详细,但实现方式上没有过多的说明。 本质上就是一个 POST 消息请求 所以我们只要, 完成正常发送POST 使得钉钉方从中可获取对应格式的数据 即可!
1064 0
钉钉消息机器人.Net通用C#Unity实现钉钉消息通知一个工具类(无需SDK,无其他引用)
|
Java 开发工具 Android开发
2018年Unity结合Android SDK下载安装及配置教程
原文:2018年Unity结合Android SDK下载安装及配置教程 首先声明: Unity版本2017.1f3        最近试着在Unity中利用网易做AR开发时,发布项目文件需要发布到Android平台,遇到一些问题,看了网上的一些资料,踩了一些坑,现在总结出来,希望有相同的开发者遇到时可以规避。
3964 0
|
BI 开发工具 图形学
Unity 数据统计SDK TalkingData
官网链接:http://www.talkingdata.com/ 进入官方给出的demo网页统计 API使用文档:http://doc.talkingdata.com/posts/65#%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90-%E9%9B%86%E6%88%90%E6%A3%80%E6%9F%A5%E5%88%97%E8%A1%A8 下面是配置流程 第一步:常规注册登录 创建游戏产品 填写游戏名称类型等 下载对应平台的SDK。
1806 0
|
Java API 开发工具
Unity SDK JDK 环境配置 避免各种莫名其妙的报错
在进行Unity Android打包的时候总会遇到一些错误,错误无非一下几大类 SDK版本过高或者过低 JDK版本过高或者过低 ADB环境变量没有配置 Java环境变量没有配置 SDK文件夹中的文件命名错误 以下介绍一些配置环境的流程帮助大家能够正常打包android.
2021 0
|
Java 开发工具 Android开发
|
开发工具 Android开发 图形学

热门文章

最新文章