码迷,mamicode.com
首页 > 编程语言 > 详细

GVR SDK for Unity(二)

时间:2016-06-11 22:45:12      阅读:2785      评论:0      收藏:0      [点我收藏+]

标签:

前言

关于google vr sdk的具体使用,传送门 [Gvr]Google VR SDK for Unity(一)

Google Daydream平台已经整合进Google VR SDK

本文环境:Unity5.3.1 x64 , Gvr SDK 0.8 , VS2013

单词翻译

stereo:立体的; pose:姿势; gaze:凝视,注视;Reticle:十字线,准星 ;Responder:应答者;

provider:提供者;ProviderFactory:工厂类; Emulator:仿真程序,仿真器

Perspective:透视,3D相机;Orthographic:正交,2D相机;

 

脚本参考


Scripts\

GazeInputModule

实现UnityEngine.UI.BaseInputModule接口(BaseInputModel继承自UnityEngine.UI.UIBehaviour)

所以uGUI的元素在被选中或trigger ,touching 触发的事件,可以传递出来。

技术分享

 

GvrEye

控制 stereo 单个camera

技术分享

 

GvrHead

提供头部跟踪的数据给camera,在头部运动过程中它附着的transform属性也会同步发生改变。

技术分享

 

GvrPostRender

执行呈现立体画面的失真校正

技术分享

 

GvrPreRender

清除整个屏幕。

原理:Clear Flags 确定了屏幕哪些部分将被清除。这是为了方便使用多个摄像机画不同的游戏元素

技术分享

 

GvrProfile

 

GvrView

头戴式显示设备的信息传递

技术分享

 

Pose3D

 

StereoController

绑定在MainCamera上,两个GvrEye渲染stereo view 内容的控制器

技术分享

 

StereoRenderEffect


Scripts\Audio\

GvrAudio

负责Gvr音频类和系统原生音频系统进行通信

 

GvrAudioListener

GVR音频监听器组件,可提高音频监听器,提供先进的空间音频功能。技术分享

 

GvrAudioRoom

GVR音频室组件,对绑定此组件的gameobject,模拟房间的环境影响

 

GvrAudioSource

GVR audiosource组件增强,给audiosource提供先进的空间音频功能。
技术分享


Scripts\Controller\

GvrController

GVR Controller API的主入口

技术分享

 

Scripts\Controller\Internal\ControllerProviders

技术分享

 

Scripts\Controller\Internal\Emulator

仿真器

技术分享


Scripts\UI\

GvrGaze

Class that can perform gaze-based selection, as a simple alternative to the more complicated path of using GazeInputModule and the rest of uGUI.

可以执行准星选中的操作,比起使用gazeinputmodule ,它作为一个简单的替代

 

GvrReticle

当用户凝视任何对象时,在该对象前绘制一个十字准星

技术分享


Scripts\VRDevices\

包括各种平台及运行环境的模拟

技术分享

 

接口

IGvrGazePointer

为GazeInputModule提供接口,接口中定义输入输出的处理函数

技术分享

主要逻辑处理在GazeInputModule.UpdateReticle

if (gazeObject == previousGazedObject) {
  if (gazeObject != null) {
    gazePointer.OnGazeStay(camera, gazeObject, intersectionPosition, isInteractive);
  }
} else {
  if (previousGazedObject != null) {
    gazePointer.OnGazeExit(camera, previousGazedObject);
  }

  if (gazeObject != null) {
    gazePointer.OnGazeStart(camera, gazeObject, intersectionPosition, isInteractive);
  }
}

 

IGverGazeResponder

为GvrGaze提供接口,接口中定义了凝视的触发事件

三个方法 OnGazeEnter OnGazeExit OnGazeTrigger 当准星对准任何Gameobject时的处理,具体请查看GvrGaze.cs中的HandleGaze

 


Resources

Resources\SolidColor.shader  纯色填充

Resources\UnlitTexture.shader  无光照帖图

Distortion\GvrDistortion.cginc 扭曲shader

Resources\UI\GvrReticleShader.shader 准星,十字线Shader

Resources\GvrAudioMixer.mixer 音频文件

 


Plugins

AndroidManifest.xml

<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="22" />

Google.ProtocolBuffers.dll


把android的API提供给unity调用

Plugins\Android\unity gvr activity.aar

Plugins\Android\gvr_android_common.aar

Plugins\Android\libs\armeabi-v7a\libgvrunity.so

技术分享

unitygvractivity_classes.jar

技术分享

gvr_android_common_classes.jar

技术分享

aar文件

*.aar是一种压缩文件,和*.jar类似,不过它可以包含资源文件,例如图片、drawable、xml资源

 

JD-GUI

Java反编译工具 JD:http://jd.benow.ca/

如果运行JD-GUI报下图错误

技术分享

解决办法

1. 请下载安装jre 1.7.0

2. 把jd-gui.exe拷贝到jre安装路径下,就可以双击运行啦

技术分享

 

Java7存档下载:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html?ssSourceSiteId=otncn

Java 存档:http://www.oracle.com/technetwork/java/javase/archive-139210.html

 

GVR API :Google VR for Unity SDK Script Reference

Set up a Daydream Development Kit : https://developers.google.com/vr/concepts/dev-kit-setup

资讯

Google、Unity等公司专家深度解读VR平台Daydream:https://yq.aliyun.com/articles/54066

GVR SDK for Unity(二)

标签:

原文地址:http://www.cnblogs.com/zhaoqingqing/p/5575646.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!