VR定制开发、AR定制开发(长年承接虚拟现实、增强现实应用、VR游戏定制开发,北京公司,可签合同)
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的代码和官方文档,列举虚拟现实开发中常调用的方法,以及如何做进一步的开发。敬请期待~
有需要提供VR\AR定制开发业务的公司欢迎联系我们!
我们将提供免费的咨询服务
联系QQ:372900288
VR定制开发、AR定制开发(长年承接虚拟现实、增强现实应用、VR游戏定制开发,北京公司,可签合同)的更多相关文章
- VR外包—长年承接虚拟现实项目和AR外包游戏、软件(北京动点飞扬软件)
VR外包AR外包公司(虚拟现实外包公司)承接虚拟现实项目开发(企业.教育.游戏) 可公对公签正规合同,开发票. 我们是北京的公司.专业团队,成员为专业 VR/AR 产品公司一线开发人员,有大型产品开发 ...
- android外包公司—技术分享:Android开发环境搭建(长年承接安卓应用外包)
Android开发环境搭建 1.安装JDK 1.1.由于Android是基于java语言的.所以在开发过程中,首先要做的事儿就是安装JDK. 1.2.JDK的安装步骤: 设置环境变量:我的电脑---- ...
- Win10外包公司——长年承接Win10App外包、Win10通用应用外包
在几天前的WinHEC大会中,微软特意在大会中展示了其对通用应用的称呼规范,现在,适用于Windows通用平台的应用的正式名称为“Windows应用”(Windows apps),简洁明了. 总而言之 ...
- Win10外包公司(长年承接Win10App外包、Win10通用应用外包)
在几天前的WinHEC大会中,微软特意在大会中展示了其对通用应用的称呼规范,现在,适用于Windows通用平台的应用的正式名称为“Windows应用”(Windows apps),简洁明了. 总而言之 ...
- 深入浅出node.js游戏服务器开发1——基础架构与框架介绍
2013年04月19日 14:09:37 MJiao 阅读数:4614 深入浅出node.js游戏服务器开发1——基础架构与框架介绍 游戏服务器概述 没开发过游戏的人会觉得游戏服务器是很神秘的 ...
- VR外包AR外包公司(虚拟现实外包公司)承接虚拟现实项目开发(企业、教育、游戏)
VR外包AR外包公司(虚拟现实外包公司)承接虚拟现实项目开发(企业.教育.游戏) 可公对公签正规合同,开发票. 我们是北京的公司.专业团队,成员为专业 VR/AR 产品公司一线开发人员,有大型产品开发 ...
- AR图像识别 AR识别图像 AR摄像头识别 外包开发 AR识别应用开发就找北京动点软件
当绝大多数手机厂商还在追求后置双摄拍照的时候,已经有人开始潜心研究AR手机了.刚刚结束的美国消费电子展上,华硕发布了全新的ZenFone AR手机,配备5.7英寸2K屏.骁龙821处理器.8GB内存, ...
- 如何开发AR增强现实应用与产品
2016年被称为VR元年,可见火爆程度,但是我要告诉你,其实还有一种技术AR(增强现实)技术,才是下一个真正的“风口”技术.可以预见的是,未来AR应用爆发之时,必将超越VR产业规模,开拓千亿级市场空间 ...
- VR视频外包公司(长年承接虚拟全景外包、虚拟现实视频外包)
承接VR视频外包(虚拟全景外包),虚拟现实视频外包(北京公司) 我们制作各类型VR全景虚拟现实,增强现实视频制作.录制等项目! 品质保证,售后完备. 我们团队成立于2011年10月,是一个专业从事严肃 ...
随机推荐
- 如何用js定义数组,用js来拼接json字段
定义js数组的方式有: var arr = (); var arr = []; var arr = new Array(); 如何拼接成一个json字段. <!DOCTYPE HTML PUBL ...
- C语言中关于对目录的操作
原文地址:C语言中关于对目录的操作 目录的操作不论是在嵌入式产品还是应用软件编程都是必不可少的,不同的开发语言可能略有不同,笔者主要是讨论在Linux平台下对目录的一系列操作: 1.获取当前目录操作: ...
- Xcode6中如何使用自定义的类模板
说到IOS类的模板,有些人感觉很陌生,但是只要有开发过IOS程序的人,其实都用过类的模板,只不过是用的系统自带的类的模板. 例如创建一个ClassTemplateVC继承于UIViewControll ...
- ARM指令教程
ARM指令教程 ARM汇编程序特点: l 所有运算处理都是发生通用寄存器(一般是R0~R14)的之中.所有存储器空间(如C语言变量的本质就是一个存储器空间上的几个BYTE).的值的处理 ...
- Python 基礎 - 字典的操作使用
接下來介紹字典,這在未來工作上,會是很常使用的,就來好好了解一下唄- 字典是一個 key(鍵)-value(值) 的數據類型,可以儲存很多訊息 #!/usr/bin/env python3 # -*- ...
- Array(数组)--map方法
关于Array.prototype.map() MDN 给的定义是: 在作用数组元素的每一项上调用一个方法(callback),返回一个新数组: 使用格式:arr.map(callback[,this ...
- matlab列优先与高维矩阵重构 及 CNN 逐层可视化 on Matlab
由于matlab在列化a(:)以及reshape(a)等操作中是列优先的,所以要重构出新的高维度矩阵,通常要把reshape和permute结合起来使用. 先到 http://caffe.berkel ...
- Android之QQ登录界面
首先过程中碰到的几个问题: 1.对 EditText 进行自定义背景 2.运行时自动 EditText 自动获得焦点 3.在获得焦点时即清空 hint ,而不是输入后清空 4.清空按钮的出现时机(在得 ...
- MATLAB中fft函数的正确使用方法
问题来源:在阅读莱昂斯的<数字信号处理>第三章离散傅里叶变换时,试图验证实数偶对称信号的傅里叶变换实部为偶对称的且虚部为零.验证失败.验证信号为矩形信号,结果显示虚部是不为零且最大幅值等于 ...
- gulp基本用法
嗨,小伙伴们,大家周五好,又到了一周中最最最期待的周五啦啦~~~ 这几天一直在研究gulp的使用方法,今天抽时间来整理一下基本步骤. gulp 的使用流程: 安装nodejs ->安装git(方 ...