学习源于官方文档 微软官文~

笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文

(二)Hololens Unity 开发入门 之 Hello HoloLens~

本文主要记录 HoloLens Unity 开发入门 ~

一、说在前面的话

Unity 对 VR AR 甚至 将来的 MR 来说,的确是一个相当不错的开发引擎 ~ (这里就不辩论UE4了~) 经过过去一年的Unity和移动设备的混合开发,总结出了下面的一些结论

1、便捷开发者对3D的处理

深有感触呀~从最开始接触公司的项目开始的时候,那会用的是Vuforia iOS原生的SDK做的开发,一句一句没有逻辑的 OpenGL 命令行,瞬间让刚刚接触OpenGL的开发者懵逼 ~ Unity作为一个3D引擎,通过底层连接移动端 (OpenGL)或者 HoloLens (D3D)的 图形处理API,向开发者暴露 高度封装的 API,便捷了开发者对图形的处理~

2、多平台功能性API规范统一

刚刚过去的2016年据说是VR元年,这一年中 ~ 除开国产硬件厂商,著名的海外VR硬件产商也比较多, 大量的硬件产商可能对于消费者来说 是 一件好事,多了选择的空间 ~ 可是对于开发者来说 是 一场噩梦呀 ~ 老板的需求永远是希望一套代码任何硬件都能跑,恩~ 这时候Unity在中间起到一层缓冲的作用。。同一个UnityEngine的方法,同一套代码 可以 在不同的设备在跑,当然不能百分之百的说 Unity 能很好的兼容各种设备,但是能起到对开发复杂程度 一定 的缓冲作用。(个人感觉UnityEngine的API还不够规范,希望Unity也继续努力吧~)

3、开发者数量

额 ~ 这个话题官方数据 说 2014年开发者数量 就已经达到全球 330万人~ 额,不过从过去Unity在手游领域来看,数量应该也算是不少了 ~ 就连HoloLens有自己D3D引擎也推荐Unity来开发(至于官文推荐Unity也有可能是微软和Unity的一些合作关系吧~) 相对于如果各种AR设备平台的开发者来说,Unity在应用厂商人才招聘上绝对是一大优势~

总结

其实很容易看出 ~ 上面说到的Unity的所优点都是相对于应用产商来说,大大的节省了开发成本 ,分为人力成本和技术成本~ 作为硬件厂商的微软 为 广大的应用产商提供了便捷的开发方式,而应用产商开发出大量的基于HoloLens的产品,这时候实现了双赢 ~ 授人玫瑰,手留余香。。。

NOTE:对于HoloLens 来说,仅仅只用Unity开发HoloLens并不能很好的开发产品。
首先,Unity对于3D图像的处理时相当不错的选择~不过Unity对于界面开发的便捷性无力吐槽~
其次,Unity开发HoloLens是用高度封装好的API,至于实现一些复杂的需求,可能还会涉及核心层面的一些接口的调用
最后,Windows 有这么好的GUI API 为啥不用~!?


二、HoloToolkit-Unity 集成

使用Unity开发HoloLens的原理和Unity开发移动端游戏一样~ Unity调用了硬件设备提供的API实现一系列功能 ~

1、下载

HoloToolkit-Unity GitHub下载地址 ~ 点我
首先把它download 吧~ 使用Unity打开,能看到分为两个文件夹,一个是HoloToolKit (这个就是我们需要的开发工具了),还有一个是 HoloToolkit-Examples 里面都是一些实例~ 可以参考参考 一些 HoloToolKit 方法的调用 ~

2、压包

选中HoloToolKit 右键 Export Package,再勾选第一个HoloToolKit,,点击Export到处一个Packgage

3、集成HoloToolKit

新建一个Unity工程 ~ 导入刚刚导处的package 就 OK了~


三、Camera 配置

1. 设置 Camera 的 Tag 为 MainCamera
2. 设置 Camera 的 position 为 0,0,0
3. 设置 Camera 的 Clear Flags 为 Solid Color
4. 设置 Camera 的 Background RGBA 为 0,0,0,0
5. 设置 Camera Clipping Planes 的 Near 值 为 0.3到0.85之间的一个值~

相机需要改变的配置就是以上这些了~ 查阅官文可得~


四、Unity工程的配置

1. 选择 File > Build Settings... 更改为 Windows Store 平台
2. 设置 SDK 为Universal 10
3. 设置 Target device 为 HoloLens
4. 设置 UWP Build Type 为 D3D
5. 勾选Debugging 里面的 Unity C# Projects ~ 这样才能导出VS工程 ~

6. 接着点击Player Settings...选择Windows Store 平台,在Other Settings 找到Virtual Reality Supported 并且勾选上 ,点击加号 添加Virtual Reality Devices设备 Windows Holographic ~

7. 选择 Edit > Project Settings > Quality ,点击向下 的 按钮 ~ 选择 Fastest , 最快的~

以上所有的配置完成~ 在场景里面随便丢一个Cube吧~ 导出,,看看效果 ~


五、Hello HoloLens ~

(二)Hololens Unity 开发入门 之 Hello HoloLens~的更多相关文章

  1. (二)Hololens Unity 开发之 语音识别

    学习源于官方文档 Voice input in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (二)Hololens Unity 开发之 语音识别 Hol ...

  2. (四)Hololens Unity 开发之 凝视系统

    学习源于官方文档 Gaze in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 HoloLens 有三大输入系统,凝视点.手势和声音 ~ 本文主要记录凝视 ...

  3. (五)Hololens Unity 开发之 手势识别

    学习源于官方文档 Gestures in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (五)Hololens Unity 开发之 手势识别 HoloLe ...

  4. (三)Hololens Unity 开发之 语音识别

    学习源于官方文档 Voice input in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (三)Hololens Unity 开发之 语音识别 Hol ...

  5. (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10)

    (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10) 系统要求 64位 Windows 10 除了家庭版的 都支持 ~ 64位CPU CPU至少是四核心以上~ 至少 ...

  6. javaweb学习总结二十一(servlet开发入门、servlet生命周期以及调用过程)

    一:servlet开发入门 servlet是sun公司一门开发动态web资源的技术,下面编写一个servlet入门程序: 1:在tomcat服务器webapps目录下新建firstServlet目录, ...

  7. Unity3d Hololens MR开发入门

    一.Hololens概述 Hololens有以下特性 1.空间映射借助微软特殊定制的全息处理单元(HPU),HoloLens 实现了对周边环境的快速扫描和空间匹配.这保证了 HoloLens能够准确地 ...

  8. 【Bluetooth|蓝牙开发】二、蓝牙开发入门

    个人主页:董哥聊技术 我是董哥,嵌入式领域新星创作者 创作理念:专注分享高质量嵌入式文章,让大家读有所得! [所有文章汇总] 1.蓝牙基础概念 蓝牙,是一种利用低功率无线电,支持设备短距离通信的无线电 ...

  9. HoloLens开发手记 - Unity development overview 使用Unity开发概述

    Unity Technical Preview for HoloLens最新发行版为:Beta 24,发布于 09/07/2016 开始使用Unity开发HoloLens应用之前,确保你已经安装好了必 ...

随机推荐

  1. CodeForces 614D Skills

    排序+枚举+二分 最大的那些变成A,小的那部分提高最小值 #include<cstdio> #include<cstring> #include<cmath> #i ...

  2. 轻量级别的Cache和反向代理软件---Varnish

    1.Varnish描述 1.1 Varnish的结构与特点 Varnish是一个轻量级别的Cache和反向代理软件,先进的设计理念和成熟的设计框架是Varnish的主要特点: 基于内存进行缓存,重启后 ...

  3. (中等) CF 576D Flights for Regular Customers (#319 Div1 D题),矩阵快速幂。

    In the country there are exactly n cities numbered with positive integers from 1 to n. In each city ...

  4. UWSGI配置文件---ini和xml示例

    一   conf.ini文件: [uwsgi] http = $(HOSTNAME):9033 http-keepalive = 1 pythonpath = ../ module = service ...

  5. 用eclipse还是myeclipse好

    工欲善其事,必先利其器.工具,只是一个达成目的的手段,如果你的目的是更关心业务逻辑和开发效率,使用myeclipse.如果你的目的是对eclipse的插件的安装,使用更加了解,业余可以研究一下ecli ...

  6. php中var_dump() 打印出一个对象的时候,信息怎么看?

    php 的一个依赖注入容器, 说白了,就是用php 的反射类,来在运行的时候动态的分析类具有的函数,以及动态分析函数的参数, 从而实例化类,并执行类的方法. 另外,php 中的 typehint 还是 ...

  7. ubuntu 开启 ftp 服务 | mingming-killer

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  8. Android之ListView的快速滑动模式:fastScrollEnabled以及滑块的自定义

    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/0917/1690.html http://blog.csdn.net/xyang ...

  9. 将UTF8编码转化为中文 - NSString方法

    方法一: 代码如下,如有更好的方法 麻烦贴出来,这个方法是通过webview进行解码的 UIWebView *web = [[UIWebView alloc] init]; NSString *tsw ...

  10. Mybatis 模糊查询 中文问题

    IDE编码:GBK ,换成UTF-8也不行! @Testpublic void testSearchStudents() {logger.info("查询学生(带条件)");Map ...