**学习源于官方文档 微软官文~ **
笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文
(二)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,便捷了开发者对图形的处理~
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,至于实现一些复杂的需求,可能还会涉及核心层面的一些接口的调用 !
**
二、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吧~ 导出,,看看效果 ~