Cardboard虚拟现实开发初步(二)

Google Cardboard 虚拟现实眼镜开发初步(二)

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的代码和官方文档,列举虚拟现实开发中常调用的方法,以及如何做进一步的开发。敬请期待~

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-10 02:16:17

Cardboard虚拟现实开发初步(二)的相关文章

Cardboard虚拟现实开发初步(一)

Google Cardboard 虚拟现实眼镜开发初步(一) 虚拟现实技术简介 不得不说这几年虚拟现实技术逐渐火热,伴随着虚拟现实设备的价格迅速平民化,越来越多的虚拟现实设备来到了我们眼前,也因此虚拟现实方面的开发离我们也越来越近. 这几年迅速崛起的Oculus,其成功就在于拉近了虚拟现实与群众的距离,把原本价格高不可攀的虚拟现实设备放到了我们可以触手可及的位置,Oculus的技术开辟了全新的体验和可能性,不仅仅在游戏领域,还在生活.教育.医疗等诸多领域拥有广阔的想象空间,Facebook在20

Cardboard虚拟现实开发初步(三)

Google Cardboard 虚拟现实眼镜开发初步(三) 利用Cardboard SDK for Unity Demo进行后续开发 在上一篇文章中,我们导入了Cardboard SDK,并且运行了Demo.这一次我会教给大家怎么利用这个Demo创建一个自己的场景,把自己的模型放进场景,用虚拟现实眼镜进行观赏甚至操作,其实只要会Unity,这些都很简单. 这里我会导入一个我自己制作的直升飞机模型,可以理解为制作一个模拟驾驶游戏,之后的后续开发涉及到我自己的项目,就不过多讲解了.后续我会讲解一下

Cardboard虚拟现实开发初步(四)

Google Cardboard 虚拟现实眼镜开发初步(四) Cardboard SDK for Unity Demo的一些解析 写在前面 自从上次写完这个系列的第三篇,忙了一阵子的项目,忙了一阵子的英语,考完一大波考试之后,终于能继续给大家分享一些开发心得了,这期间有好几个同学给我私信甚至qq我,问我啥时候更新,无奈实在是太忙,只能一拖再拖,我感觉是十分对不起大家的,没能及时更新,这里给大家说个对不起.不过能有这么多人关注我的博客,这也是对我最大的肯定,能得到大家的认可心里十分的高兴,希望大家

[入门级] 基于 visual studio 2010 mvc4 的图书管理系统开发初步 (二)

[入门级] 基于 visual studio 2010 mvc4 的图书管理系统开发初步 (二) Date  周六 10 一月 2015 By 钟谢伟 Category website development Tags asp.net / mvc4 相关资源 ibatis manual pro git 廖雪峰的官方网站 BookMS-V1.0 上一篇链接 任务简介 开发工具:VS2010 项目框架:MVC4 浏览器:Chrome 数据库ORM框架:iBatis.net 数据库:mysql 后端开

Hello,Cardboard!!-如何开发一个最简单的Cardboard虚拟现实应用(一)

温馨提醒,本篇为介绍篇,如果只想看如何开发的具体步骤请参看<Hello,Cardboard!!-如何开发一个最简单的Cardboard虚拟现实应用(三)> 前述:恕我啰嗦一下,主要照顾对cardboard不太了解的朋在,Cardboard是由Google公司的两位巴黎办公室的员工利用业余时间创作出来的作品,它最大的特点就是将原来人们以为高大上的虚拟现实技术以廉价的方式带进了公众的视野,到目前为止,google已推出了改良版的cardboard 2代盒子,相比1代,2代改善了成像,增加了视野范围

虚拟现实开发一些建议

本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接: http://blog.csdn.net/cartzhang/article/details/51898067 作者:cartzhang [本文为原作者对虚拟现实开发的一些建议和理解,写的非常不错.理解的也非常透彻,希望对各位在路上的VR开发者有积极作用.] 下面是我对虚拟现实开发一下建议.我已经把他们分为Vive相关,常规VR和更宽泛意义上的建议.更多建议请关注我的Twitter. 一.Vive 相关 1. 让玩家按

QT开发(二十二)——QMainWindow主窗口

QT开发(二十二)--QMainWindow主窗口 一.主窗口简介 应用程序中的主窗口是与用户进行长时间交互的顶层窗口,提供了应用程序的大部分功能,通常是应用程序启动后的第一个窗口,应用程序一般由一个主窗口和多个对话框组成. QT中直接支持主窗口,QMainWindow是QT中主窗口的基类,是继承于QWidget类的容器型组件. QMainWindow内部封装了菜单栏.工具栏.中心组件.停靠组件.状态栏等. QMainWindow内置了布局管理器,基本的组件布局如下: 二.菜单栏 QT中提供了预

QT开发(二十)——QT对话框

QT开发(二十)--QT对话框 一.对话框简介 对话框是与用户进行简短交互的顶层窗口 QDialog是QT中所有对话框窗口的基类,QDialog继承于QWidget,是一种容器型的组件,是定制了窗口样式的特殊QWidget. QDialog作为一种专用的交互窗口,不能作为子部件嵌入其他容器中. 二.对话框类型 对话框类型分为模态对话框和非模态对话框. 1.模态对话框 模态对话框显示后无法与父窗口进行交互,是一种阻塞式的对话框,使用QDialog::exec()函数调用. 模态对话框一般在栈上创建

QT开发(二十七)——QT常用类(一)

QT开发(二十七)--QT常用类(一) 一.QString 1.QString简介 QString提供了Unicode编码的字符串,使用隐式共享技术来节省内存和不必要的数据拷贝,不必考虑跨平台的兼容性. QString类成员函数中除了 ascii().latin1().utf8().local8Bit()函数,其他所有的函数都是可重入的. 2.QString成员函数 QString::QString ( const QChar * unicode, int size ) QString::QSt