学习源于官方文档 微软官文~ git
笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文github
本文主要记录 HoloLens Unity 开发入门 ~windows
Unity 对 VR AR 甚至 未来的 MR 来讲,的确是一个至关不错的开发引擎 ~ (这里就不辩论UE4了~) 通过过去一年的Unity和移动设备的混合开发,总结出了下面的一些结论api
深有感触呀~从最开始接触公司的项目开始的时候,那会用的是Vuforia iOS原生的SDK作的开发,一句一句没有逻辑的 OpenGL 命令行,瞬间让刚刚接触OpenGL的开发者懵逼 ~ Unity做为一个3D引擎,经过底层链接移动端 (OpenGL)或者 HoloLens (D3D)的 显卡接口,向开发者暴露 高度封装的 API,便捷了开发者对图形的处理~工具
刚刚过去的2016年听说是VR元年,这一年中 ~ 除开国产硬件厂商,著名的海外VR硬件产商也比较多, 大量的硬件产商可能对于消费者来讲 是 一件好事,多了选择的空间 ~ 但是对于开发者来讲 是 一场噩梦呀 ~ 老板的需求永远是但愿一套代码任何硬件都能跑,恩~ 这时候Unity在中间起到一层缓冲的做用。。同一个UnityEngine的方法,同一套代码 能够 在不一样的设备在跑,固然不能百分之百的说 Unity 能很好的兼容各类设备,可是能起到对开发复杂程度 必定 的缓冲做用。(我的感受UnityEngine的API还不够规范,但愿Unity也继续努力吧~)学习
额 ~ 这个话题官方数据 说 2014年开发者数量 就已经达到全球 330万人~ 额,不过从过去Unity在手游领域来看,数量应该也算是很多了 ~ 就连HoloLens有本身D3D引擎也推荐Unity来开发(至于官文推荐Unity也有多是微软和Unity的一些合做关系吧~) 相对于若是各类AR设备平台的开发者来讲,Unity在应用厂商人才招聘上绝对是一大优点~开发工具
其实很容易看出 ~ 上面说到的Unity的所优势都是相对于应用产商来讲,大大的节省了开发成本 ,分为人力成本和技术成本~ 做为硬件厂商的微软 为 广大的应用产商提供了便捷的开发方式,而应用产商开发出大量的基于HoloLens的产品,这时候实现了共赢 ~ 授人玫瑰,手留余香。。。ui
NOTE:对于HoloLens 来讲,仅仅只用Unity开发HoloLens并不能很好的开发产品。
首先,Unity对于3D图像的处理时至关不错的选择~不过Unity对于界面开发的便捷性无力吐槽~
其次,Unity开发HoloLens是用高度封装好的API,至于实现一些复杂的需求,可能还会涉及核心层面的一些接口的调用 !
命令行
使用Unity开发HoloLens的原理和Unity开发移动端游戏同样~ Unity调用了硬件设备提供的API实现一系列功能 ~翻译
HoloToolkit-Unity GitHub下载地址 ~ 点我
首先把它download 吧~ 使用Unity打开,能看到分为两个文件夹,一个是HoloToolKit (这个就是咱们须要的开发工具了),还有一个是 HoloToolkit-Examples 里面都是一些实例~ 能够参考参考 一些 HoloToolKit 方法的调用 ~
选中HoloToolKit 右键 Export Package,再勾选第一个HoloToolKit,,点击Export处处一个Packgage
新建一个Unity工程 ~ 导入刚刚导处的package 就 OK了~
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之间的一个值~
相机须要改变的配置就是以上这些了~ 查阅官文可得~
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吧~ 导出,,看看效果 ~