VR各平台开发环境搭建

自己从网络整理出来VR开发环境搭建,请尊重原创,转载请注明。

(1)Google VR(Cardboard与Daydream)

(2)HTC Vive

(3)Oculus

(4)Hololens


第一部分:关于Google VR 开发平台的搭建

一.Cardboard

1. 到官网下载相关包文件(建议开个VPN)https://github.com/googlevr/


VR各平台开发环境搭建_第1张图片


VR各平台开发环境搭建_第2张图片

2. 新建项目并导入CardboardSDKForUnity.unitypackage

VR各平台开发环境搭建_第3张图片

VR各平台开发环境搭建_第4张图片

3. 运行demo

VR各平台开发环境搭建_第5张图片


VR各平台开发环境搭建_第6张图片

4.通过demo 我们可以分析出搭建一个最基本环境的要素,小编在这用的是Cardboard 的旧版本。

5.通过将导入谷歌VR统一包装资产>导入包>自定义数据包...。选择GoogleVRForUnity您下载它unitypackage并点击打开。确保所有的箱子都在导入包对话框中选中并单击导入。注意:您可能会被警告这些API将自动升级。接受并继续如果它发生。

6.在编辑器的项目窗格中,导航到资产>谷歌VR> DemoScenes文件夹并打开ControllerDemo。您应该看到带有花纹网格平面上的场景立方体它上面漂浮。

7.您连接控制器的手机(不是耳机手机)使用USB电缆连接到计算机。启动控制器手机上的控制器仿真器应用程序。

7.按播放在Unity按钮。你应该会看到几个白色立方体的立体游戏视图渲染。四处移动控制器的电话和看到一个黄点在游戏环境中走动

更多详细教程以及相关案例请看(VR 游戏找怪物:http://www.taikr.com/course/376)

二. Daydream 平台

  1. google VR 相关SDK 的下载(https://github.com/googlevr/)

  2. 相关 插件及类

    VR各平台开发环境搭建_第7张图片

  3. 3.Daydream 的开发类似Cardboard 的搭建,可以看相关教程()

第二部分  HTC Vive

HTC相关开发所需SDK(http://www.manew.com/thread-47388-1-1.html)

OpenVR SDK[github.com]. OpenVR SDK是由原本的SteamWorks SDK更新而來,新增對HTC Vive開發者版本的支援,也包含Steam VR的控制器及定位設備的支援。相關的API是以C++實作,已有C++經驗的開發人員可以直接學習。


SDK documentation[github.com] SDK文件說明(英文),針對主要界面解釋使用方法。包含IVRSystem, IVRChaperone, IVRCompositor, IVRRenderModels 及 IVROverlay。

SDK samples[github.com]SDK範例,從範例(hellovr_opengl 及 helloworldoverlay) 即可快速學習如何建立VR這個世界的方法,可以逐步修改成為你自己的應用。由於範例使用了Visual Studio套件的專案格式,請自行上Microsoft網站下載或是直接使用編輯器查看.cpp檔。


Unity plugin[u3d.as]使用Unity平台開發Vive應用所需要的套件。Unity平台擁有的Unity引擎可加快VR世界中3D特效的開發,當然若習慣使用Visual Studio也是可以的,完全看開發者的喜好。


Setup Manual[steamcdn-a.akamaihd.net]HTC Vive安裝說明(英文),中文版本後續會再提供。


SteamVR FAQs & How To Guides SteamVR 官方FAQ。相關問題這裡已有豐富的討論及解答,陸續會將重要的問答翻譯後放到論壇上。


HowTo Update Firmware 拿到開發者版本第一件事情是將硬體的韌體更新至最新,可有效增進定位的速度及準確性


Troubleshooting問題排除指南。

请大家自行下载

2.Steam

VR各平台开发环境搭建_第8张图片

VR各平台开发环境搭建_第9张图片

VR各平台开发环境搭建_第10张图片


到unity下载 Steam VR 插件后,连接号HTC VIVe 设备(相关教程请看 http://www.izhiyiwang.com/thread-3283-1-1.html)

3.导入资源包后,接下来运行demo(示例请看http://edu.manew.com/course/120)

第三部分:Oculus

经过这么几天对Oculus研究,大概总结出了这么些经验,希望能对正在或者打算使用Oculus的各位GG或者MM有所帮助。

首先呢是安装Oculus,比较恶心...(表示光配置硬件环境,在下都配置了两天...(不过比起配了4天的大神,还算可以啦~~~))

(首先你得要有设备...)

第一步

首先玩家需要前往官网(https://www.oculus.com/en-us/setup/)下载Oculus Rift软件。然后创建一个Oculus账号(应该是先创建账号,推荐使用网易邮箱,

腾讯的扣扣邮箱不管用!)

第二步

一般情况下呢,是打不开下载链接的,为啥呢?因为你没~~~VPN想必大家都知道一些吧,像长城啦,赛风啦,Loco什么的,看自己爱好选吧。

不过这里要提醒一点,最好找一个稳定的VPN,支持800M以上的数据更新,因为我们这个安装包是800多M(对啦,提醒一下,如果有以前的旧版本也就是安装

的作品,一定要确保其删除干净后再安装)

VR各平台开发环境搭建_第11张图片

第三步

经过一段时间的等待就下载完成了,不过这里它需要你配置你的硬件环境,

VR各平台开发环境搭建_第12张图片

也就是插线喽...

插在你主机对应的3.0接口上(必须是3.0接口,手柄的话还有3.0接口的话就接入,没有的话就2.0啦...)在这儿呢大部分用户呢会出现传感器识别不到

也就是Sensor USB,如果等了很久都没反应的话,那就点右下角的Skip(跳过这一步),在以后的操作中呢 他就会不停的提示你硬件设备没获取到这个

提示,不要搭理,一路狂跳!然后就到了使用虚拟头盔进行操作的时候,他会提示你用你的遥控器,点击方向按钮中间的那个按钮控制就行。

第四步

也就是卡死大部分人的一步,也是安装进程的倒数第二步(最后一步就是Finish...)

这里呢,它会提示你设置View也就是视图界面,如果姿势不对呢,就会一直卡在这一步...其实解决起来呢也很简单。

解决方法:带上你的头盔盯着你的传感器,传感器就会自动识别,你会看到你的传感器自动识别的一幕,看着很高大上哦~~(这就已经完成安装了)

友情提示:然后就安装好了,然后点击一个名叫Oculus的应用程序,点击设置按钮,一个齿轮状的按钮,弹出一个弹框,点击setting,你会看到你当前设备的一个链接

状况。

VR各平台开发环境搭建_第13张图片

如果你想下载东西呢 就去商店也就是Store。


安装完之后呢,我们开始使用Unity对其进行一个简单的开发,首先呢点击打开发包的那一步,就是导出的操作啦,然后点击PlayerSetting进行设置,勾选一个带有

  • virtual....的这样的一个勾选框(单词挺长,再加上没有打开Unity所有我也忘了...不过没关系,一打开PlayerSetting的时候,你就会看到右侧有很多的勾选框,那个关于虚拟的就在那些勾选框的最下面,对了,有一点忘了提了,Unity版本太低也是不可以的,推荐5.3.1以上的)然后就可以进行开发啦。在这儿呢同样需要你带上你的头盔去进行操作,
  • 带上头盔后,你会看到一个虚拟点触点,把点放在你视野中所看到的一段英文上(其实是两段英文,第二段应该是一个Button按钮的东西,不是特别明显,将虚拟点投在其上面,就会有读条操作,读条完了后就可以看到你的项目啦)
  • 然后就是关于手柄的一些操作,我在这儿呢截了我以前在进行研究的一些图片,希望对各位能起到一些简单的帮助,首先导入OculusUtilities插件,可以去官网下载
  • 这里呢 我只实现了RawButton的操作,其实Button也一样,只不过换了一个名字而已,本身没有太大的区别的,不要去在意,如果想用Button就对照这RawButton去看下就好了(对了,有一点忘了声明了,在你要控制的游戏物体上不仅要有你写的脚本还需要挂一个OVRManager的一个脚本,这个脚本是插件自带的)
  • VR各平台开发环境搭建_第14张图片
第四部分:Hololens

伴随着数月的期待,终于拿到了预订的HoloLens开发者版本套件。随着VR/AR/MR技术的热潮,国内外均对它们的应用与盈利前景持有积极的预期,这也直接导致了国内外当前投资VR/AR/MR技术的热潮。无论是融资数十亿美元的Magic Leap,还是Facebook、微软等科技巨头布局VR/AR市场,这股热潮不仅出现在风险投资领域,还席卷了消费者市场和智能硬件市场,这无疑引领了下一波互联网产业的爆发,而我们作为技术核心的开发者更不能落下。正如乔帮主所说:“Stay foolish,Stay Hungry”,今天我们就来了解下AR/MR技术的开发特性,本文以微软出品的HoloLens为目标设备。

AR/MR是什么?

VR大家都已经很清楚了,VR即是虚拟现实技术,这意味着沉浸式全虚拟的使用体验。全虚拟沉浸式的体验带了独特的视觉效果,但是由于遮盖现实内容,仍导致了头晕、运动不友好等难以解决的问题。与之相对的则是AR/MR技术,这意味虚拟世界与真实世界交织的视觉体验。从用户使用体验来看,AR/MR无疑是更符合人类自然交互模式,代表了未来更伟大的发展方向。同时在笔者看来,由Magic Leap提出的MR(Mixed Reality)技术其本质与AR(Augmented Reality)技术并无区别,微软目前也在HoloLens文档中大量使用MR技术的说法,故此本文将AR/MR技术视为一体。

VR各平台开发环境搭建_第15张图片

AR核心特性

正如上面所说,AR具备与VR截然不同的视觉体验,所以其开发体验也与VR区别较大,下面我们来一起探讨HoloLens的部分核心开发特性。本文使用的开发环境为Unity HoloLens preview beta 14以及Unity Universal Windows Platform Runtime组件

开发环境

.安装清单

1.升级win10

2.Visual Studio 2015 Update 2(https://developer.microsoft.com/zh-cn/windows/downloads),请确认是最新版本(安装时采用自定义安装,电脑的内存一定要多,若安装VS 的所有配件,大约需要54GB,一定要有VPN,否则下载速度会很慢。)

VR各平台开发环境搭建_第16张图片

3.hololens 模拟器(https://pan.baidu.com/s/1dEGXC2l)大家自行下载,十分方便,适合买不起设备的人

VR各平台开发环境搭建_第17张图片

4.Unity HoloLens Technical Preview,推荐用Unity。

首先:

  1. 首先安装Unity引擎

  2. 然后安装UWP Runtime

  3. 最后可以根据需要安装离线文档工具

大家注意:设备要求--

  • 64位Windows 10 Pro, Enterprise, or Education系统(家庭版不支持Hyper-V)

  • 64位CPU

  • 8G或更多内存

  • 小编有个技巧(仅适合Mac 的用户)安装win10 十分简单,一次成功,并且在搭建开发环境时十分快,不会超过一个小时(有Vpn 的前提下),安装win10 镜像的方法,注意分配给win0

    的内存一定要多(https://www.macx.cn/forum.php?mod=viewthread&tid=2182916&extra=page%3D1%26filter%3Ddigest%26digest%3D1%26digest%3D1)

最后,对hololens 的核心做个简单介绍:

语音识别Voice Command

语音识别同样是HoloLens重要组成部分,包括我们很熟悉的Cortana,同样能够为我们带来更自然高效的输入体验。

HoloLens的语音识别分为三个部分:

  • 语音命令 KeywordRecognizer:通过关键词来执行动作

  • 语法识别GrammarRecognizer:通过预设的语法来模糊匹配动作

  • 听写 Diction:即语音转文字,用于输入

三个组件中语音命令特性最为常用,配合凝视能够完成绝大部分场景的需求。为了使用语音命令,首先要启用KeywordRecognizer实例,同时要预设好来源。

KeywordRecognizer keywordRecognizer; Dictionary keywords = new Dictionary();

通过数组来初始化关键词识别器:

keywords.Add(“activate”, () => { // 关键词动作 }); keywordRecognizer = new KeywordRecognizer(keywords.Keys.ToArray()); keywordRecognizer.OnPhraseRecognized += KeywordRecognizer_OnPhraseRecognized; //开始识别 keywordRecognizer.Start();

在响应事件中做处理,调用识别到的关键词事件。

private void KeywordRecognizer_OnPhraseRecognized(PhraseRecognizedEventArgs args) { System.Action keywordAction; //如果关键词在预设列表中,即执行其2动作 if (keywords.TryGetValue(args.text, out keywordAction)) { keywordAction.Invoke(); } }

VR各平台开发环境搭建_第18张图片

空间映射 Spatial Mapping

AR技术能实现的关键就是能够识别映射周边世界,这是全息对象与真实表面交互的基础,是AR技术的核心组件。HoloLens借助于微软特殊研发的全息处理单元(HPU 1.0)才能实现空间映射特性,幸运的是我们可以使用空间映射API来对真实世界做交互。

全息处理单元

我们可以利用SurfaceObserver组件来获取控件表面映射信息,下面是基本的操作:

SurfaceObserver surfaceObserver; void Start () { //初始化 surfaceObserver = new SurfaceObserver(); StartCoroutine(UpdateLoop()); } IEnumerator UpdateLoop() { var wait = new WaitForSeconds(2.5f); while(true) { surfaceObserver.Update(OnSurfaceChanged); yield return wait; } }

每一个空间表面都需要注册其Handle事件,用于实时调整空间映射信息和交互。

private void OnSurfaceChanged(SurfaceId surfaceId, SurfaceChange changeType, Bounds bounds, System.DateTime updateTime) { //处理空间表面变化 }




你可能感兴趣的:(技术空间)