(二)Hololens Unity 开发入门 之 Hello HoloLens~
学习源于官方文档 微软官文~
笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文
(二)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~的更多相关文章
- (二)Hololens Unity 开发之 语音识别
学习源于官方文档 Voice input in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (二)Hololens Unity 开发之 语音识别 Hol ...
- (四)Hololens Unity 开发之 凝视系统
学习源于官方文档 Gaze in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 HoloLens 有三大输入系统,凝视点.手势和声音 ~ 本文主要记录凝视 ...
- (五)Hololens Unity 开发之 手势识别
学习源于官方文档 Gestures in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (五)Hololens Unity 开发之 手势识别 HoloLe ...
- (三)Hololens Unity 开发之 语音识别
学习源于官方文档 Voice input in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (三)Hololens Unity 开发之 语音识别 Hol ...
- (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10)
(一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10) 系统要求 64位 Windows 10 除了家庭版的 都支持 ~ 64位CPU CPU至少是四核心以上~ 至少 ...
- javaweb学习总结二十一(servlet开发入门、servlet生命周期以及调用过程)
一:servlet开发入门 servlet是sun公司一门开发动态web资源的技术,下面编写一个servlet入门程序: 1:在tomcat服务器webapps目录下新建firstServlet目录, ...
- Unity3d Hololens MR开发入门
一.Hololens概述 Hololens有以下特性 1.空间映射借助微软特殊定制的全息处理单元(HPU),HoloLens 实现了对周边环境的快速扫描和空间匹配.这保证了 HoloLens能够准确地 ...
- 【Bluetooth|蓝牙开发】二、蓝牙开发入门
个人主页:董哥聊技术 我是董哥,嵌入式领域新星创作者 创作理念:专注分享高质量嵌入式文章,让大家读有所得! [所有文章汇总] 1.蓝牙基础概念 蓝牙,是一种利用低功率无线电,支持设备短距离通信的无线电 ...
- HoloLens开发手记 - Unity development overview 使用Unity开发概述
Unity Technical Preview for HoloLens最新发行版为:Beta 24,发布于 09/07/2016 开始使用Unity开发HoloLens应用之前,确保你已经安装好了必 ...
随机推荐
- PAT (Advanced Level) 1080. Graduate Admission (30)
简单题. #include<cstdio> #include<cstring> #include<cmath> #include<vector> #in ...
- Keepalived详细介绍简介
1.1.Keepalived简介 Keepalived是Linux下一个轻量级别的高可用解决方案.高可用(High Avalilability,HA),其实两种不同的含义:广义来讲,是指整个系统的高可 ...
- EasyUI中dialog中嵌入form细节问题记录
当代码如下: function myClear() { $("#add_form").form("reset"); $("#add_dialog&qu ...
- ecos资源探测器
两种类型的资源探测器 xml文件资源探测器 目录资源探测器 系统内置的资源探测器(核心) 数据库定义目录资源探测器 -base_application_datable 关注dbschema servi ...
- javascript 函数的基础知识
1. Why JavaScript functions always return a value? I'm taking a course in JavaScript programming, an ...
- FZU 2091 播放器
简单模拟题,开个栈维护一下即可. #include<cstdio> #include<cstring> #include<cmath> #include<st ...
- Apache 重启时会有报 AH00558
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0 ...
- mysql show命令
MySQL中有很多的基本命令,show命令也是其中之一,在很多使用者中对show命令的使用还容易产生混淆,本文汇集了show命令的众多用法. 1. show tables或show tables fr ...
- 基于libUSB的USB设备固件更新程序(下载数据)(转)
源:基于libUSB的USB设备固件更新程序(下载数据) 本文紧接上一篇日志:基于libUSB-Win32的USB设备固件更新程序(前言),相关背景以及起因等,此处不再赘述,如感兴趣请移步. libU ...
- CSS十问
CSS十问——好奇心+刨根问底=CSSer 最近有时间,想把酝酿的几篇博客都写出来,今天前端小学生带着10个问题,跟大家分享一下学习CSS的一些体会,我觉得想学好CSS,必须保持一颗好奇心和刨根问 ...