Cardboard SDK for Unity的使用

上一篇文章作为系列的开篇,主要是讲了一些虚拟现实的技术和原理,本篇就会带领大家去看一看谷歌的Cardboard SDK for Unity,虽然目前资料和文档较少,但是这个package用起来还是非常方便的,只要大家稍微接触过Unity就可以轻松的使用,我会以面对Unity初学者的方式进行讲解。

为了方便大家阅读,我会把步骤尽量写的细致一些,相关的谷歌官网上的英文资料和我自己翻译的中文参考我也会以博客的形式发布,方便登不上谷歌的同学阅读和下载。

(一)在官网下载Cardboard SDK for Unity

Google Cardboard 官方网站: https://www.google.com/get/cardboard/

进入Google Cardboard 官方网站的开发者指南页面,点击左侧的Unity SDK 下的Download and Samples: https://developers.google.com/cardboard/unity/download

如图点击Download Cardboard SDK for Unity (direct link to zip )进行下载; 登不上谷歌的同学也可以在我上传的文件中下载:

http://download.csdn.net/detail/sunmc1204953974/8888421

不过最好去官网下载最新的包,因为这个刚出没多久,更新换代挺快的。

(二)导入CardboardSDKForUnity.unitypackage

这里注意一下,如果是之前下载的SDK包,里面只有一个CardboardSDKForUnity.unitypackage,导入之后包含支持代码和一个例子,而新从官网下载的SDK包中包含CardboardSDKForUnity.unitypackage和CardboardSDKForUnity.unitypackage两个包,第一个是库,第二个是Demo,都导入进去即可运行实例。

首先打开Unity,New一个新Project。 (我这里使用的是最新的Unity5,Unity5相比之前版本有较大改变,目前资料也比较少,但是现在也已经有很多人用了。)

之后,通过Assets -> Import Package -> Custom Package… 引入下载好的SDK包。(就像之前红字说的那样,新下载的SDK包需要引入两次)

(三)运行DemoScene

我们看到把.unitypackage文件导入之后,在Project面板的资源文件夹下就会多出一个Cardboard文件夹,其中是SDK的插件代码和Demo示例,查看Cardboard文件夹下的 DemoScene文件夹,这是其中的一个示例(Legacy文件夹下还有另一个示例,在之后的文章中我做代码注释的时候再讲),双击场景文件DemoScene,打开示例。

点击上方的运行按钮(小箭头),就可以看到Demo示例的运行效果了。

运行之后,按住Alt移动鼠标模拟头部转动,按住Ctrl模拟歪脖子的时候视角的变化,点击鼠标相当于触发,可以用来操作。

这个Demo总的来说有这么几个功能:

  • 把目光也就是小黄点对准方块,点击鼠标,方块会传动到一个有距离限制的球面上的随机位置

  • 当目光注视方块,方块会从红变成绿色,当目光离开方块,方块会从绿色变回红色

  • 在脚下有三个按钮,分别是

    • Reset:重新把方块放回初始位置
    • Recenter:重新把视角左右方向上回归中间
    • VR Mode:打开或者关闭VR模式(分屏与否)

我们看到,这个Demo的代码只有一个文件,并且还十分短小,仅仅几行脚本就实现了这样的效果(分屏,陀螺仪,视角转动……),不得不说,Cardboard SDK 功能还是十分强大的,后续我会写一篇文章专门分析这个Demo以及代码,帮助大家快速了解Cardboard SDK 的使用。

在阅读代码和开发的过程中,可以参考官网的文档,我也会发一份英文文档和一份我自己阅读的时候顺便翻译的文档,帮助不方便上谷歌的同学。

之后设置好AndroidSDK路径,打包导出为安卓工程,在手机上安装之后,就可以放在Cardboard中或者暴风魔镜等成品镜中进行感受了~如果手机屏幕分辨率较高,感觉还是很不错的。

设置AndroidSDK:

这里不细说了,网上一大堆教程。

导出Android apk:

这里注意,需要点一下下面的Player Settings,之后右侧会出现一些设置,这里必须重新设置一下包名,不然使用默认的包名的话,是打包不出来的。同时还可以在这设置应用的图标,名称,等等

安装到手机之后的效果:

我手机像素比较低,但放到暴风魔镜里感觉还是不错的。下一次我会教给大家怎么创建一个自己的场景,把自己的模型放进场景,用虚拟现实眼镜观赏操作。再后续我会剖析Demo的代码和官方文档,列举虚拟现实开发中常调用的方法,以及如何做进一步的开发。敬请期待~

承接Unity3D外包公司 — 技术分享的更多相关文章

  1. android外包公司—技术分享:Android开发环境搭建(长年承接安卓应用外包)

    Android开发环境搭建 1.安装JDK 1.1.由于Android是基于java语言的.所以在开发过程中,首先要做的事儿就是安装JDK. 1.2.JDK的安装步骤: 设置环境变量:我的电脑---- ...

  2. Unity3D外包团队——技术分享U3D全景漫游(三)

    22.给每个物体都附上贴图,如果是纯色物体,也付给纯色贴图 23.打光后,选择要烘培的物体 设置输出路径 添加烘培输出的贴图类型 添加“LightingMap”类型 设置烘培贴图大小和目标贴图位置为“ ...

  3. ios外包公司——技术分享:手机应用开发步骤

    1. 确定你的创意 您的创意是否有人做过,如果有类似的app,那就要多多考虑,争取超越并且有一些独特的优化设计在其中 2. 定位应用 通过苹果的人机界面指南(Human Interface Guide ...

  4. ios外包公司——技术分享:IOS开发教程

        iOS入门培训,适合已经有C/C++/Java/C#基础的人学习.   本大仙主讲,总共4讲(第4讲尚在制作中),这仅仅是iOS开发的入门而已.学完本教程,应该已经足够你自学并开发app了. ...

  5. win8外包公司——技术分享:参数传递

    页面之间传递参数 windows phone 的参数传递和web 差不多.用“?”号传递 多个参数的时候用 “&”做分隔. 我接着昨天的项目继续添加一个FourPage.xaml 在昨天的Th ...

  6. Unity3d外包公司 长年承接Unity3d项目外包

    承接Unity3d体感企业项目.游戏项目外包 北京公司.专业团队,成员为专业Unity3d产品公司一线开发人员,有大型产品开发经验: 提供优质的售后服务,保证产品质量,轻量级产品可以提供规范清晰的源代 ...

  7. Unity3d外包公司|UE4外包公司:谷歌首款Daydream VR设备上手

    这款售价仅为79美元(约合人民币525元)的产品内含“够用”的手柄和一台头戴设备,只要你有一台支持月日,10月5日,dream平台的手机(未来将成为安卓平台的标配),就能体验VR的乐趣. 即使该产品最 ...

  8. 全景VR视频外包公司:长年承接VR全景视频外包(技术分享YouTube的360全景视频)

    虽然比预期来得晚了些,但YouTube终于支持360度全景视频了,这应该会吸引不少VR(虚拟现实)爱好者.今年1月,Google就表示这一功能将在“接下来”的几周出现.现在YouTube上已经有了一些 ...

  9. HTML5外包团队-技术分享【使用HTML5的VIDEO标记播放RTSP视频流】

    使用HTML5的VIDEO播放RTSP实时视频流源代码: <!DOCTYPE html> <html><head> <meta http-equiv=&quo ...

随机推荐

  1. u-boot学习笔记(一):基础概念

    1.U-Boot,全称 Universal Boot Loader,是遵循GPL条款的开放源码项目.U-Boot的作用是系统引导.U-Boot从FADSROM.8xxROM.PPCBOOT逐步发展演化 ...

  2. const和readonly区别

    内容来源<<你必须知道的.NET>>(转载) 标题:什么才是不变:const和readonly 内容: const:用 const 修饰符声明的成员叫常量,是在编译期初始化并嵌 ...

  3. Android环境虚拟WINDOWS系统

    参考文档:http://bbs.anzhi.com/thread-5120526-1-1.html 我们知道安卓手机是arm平台,windows是x86平台,指令集完全不同,但在这里要教给大家的是靠软 ...

  4. SIP模块版本错误问题:the sip module implements API v??? but XXX module requires API v???

    系统安装了python 2.7,继续安装PyQt4,于是依次下载sip.pyqt4源码进行安装.用以下代码测试: import PyQt4.QtGui 显示出错.错误信息:the sip module ...

  5. C++复数类对除法运算符 / 的重载

    C8-1 复数加减乘除 (100.0/100.0 points) 题目描述 求两个复数的加减乘除. 输入描述 第一行两个double类型数,表示第一个复数的实部虚部 第二行两个double类型数,表示 ...

  6. css中font-size的单位总结:px、em、pt

    px:基于像素的单位.像素是一种有用的单位,因为在任何媒体上都可以保证一个像素的差别确实是可见的.em :一般用来测量长度的通用单位(例如元素周转的页边空白和填充),当用于指定字体大小时,em单位是指 ...

  7. Hyper-V安装Oracle Linux6_4 Oracle db 12c并使用rman做异机恢复

    本文记录在Windows Server 2012 R2上安装Oracle Enterprise Linux 6.4以及使用RMAN进行进行异机恢复的过程. Windows服务器增加Hyper-V功能 ...

  8. seo查询命令

    以下内容均来自网络,只是稍微整理 感觉比较好用的是1.2.5.6.11.12.13条 1. site指令: 查询某个特定网站收录情况. 比如查询6676小游戏收录格式即为:site:www.6676. ...

  9. JavaScript变量作用域

    全部变量拥有全局作用域,局部变量拥有局部作用域(这里注意函数的参数也是局部变量) 1.在函数体内,局部变量的优先级高于同名的全局变量. 我的理解就是当你同时定义了同名的局部变量和全局变量时,函数体内返 ...

  10. 关于Kendo的Grid 单元格样式

    <!DOCTYPE html><html style="height: 100%;"><head><meta http-equiv=&qu ...