Microsoft HoloLens 开发(2): 运行Hello World
1.下载 MixedRealityToolkit-Unity (混合现实工具包)
- 什么是 MixedRealityToolkit-Unity ?
- 一个脚本和组件的集合,加速针对微软全息和Windows混合现实的应用程序的开发。
GitHub : https://github.com/Microsoft/MixedRealityToolkit-Unity
下载完成后解压可获得以下脚本组件.
\MixedRealityToolkit-Unity-master\Assets\

2.创建项目
- 运行Unity并创建一个项目。

- 点击 Create project 后 , 完成项目创建。

3.设置 Camera
- 将下载好的 MixedRealityToolkit 打开,把文件夹 Assets/HoloToolkit 和 Assets/HoloToolkit-Examples 拖到 Unity 的 Assets 下,由于文件较大拖动后会出现假死情况,耐心等待即可。

- 在 Unity 界面,Hierarchy 面板中删除默认创建的 Main Camera,将 Assets 面板中 HoloToolkit -> Input -> Prefabs -> HoloLensCamera 拖入 Hierarchy 面板的根级。
1.
2.
4.创建全息模型
- 在 Hierarchy 面板中右键选择 3D Object -> Cube
- 在 Hierarchy 面板中选中这个 Cube
- Unity 右侧出现 Inspector 面板找到 Transform 组件
- 设置 Position -> (X : 0 , Y : 0 , Z : 2)
- 设置 Rotation -> (X : 45 , Y : 45 , Z : 45)
- 设置 Scale -> (X : 0.25 , Y : 0.25 , Z : 0.25)

5.Build Settings
- 在 Unity 主菜单选择 File -> Build Settings
- 点击 Add Open Scenes 添加当前场景
- 在 Platform 里点击 Universal Windows Platform
- 点击 Switch Platform 切换发布平台到 Universal Windows Platform
- 设置 Target Device 为 HoloLens
- 设置 SDK 为最新版本号
- 点击 Player Settings ,Unity 右侧出现设置 Player Settings 的 Inspector 面板
- 点击 Other Settings 选项卡
- 设置 Scripting Runtime Version 为 .NET 4.x Equivalent 或更高版本后,提示重启Unity,点击重启
- 设置 Scripting Backend 为 .NET
- 点击 XR Settings 选项卡并勾选 Virtual Reality Supported
- Virtual Reality Supported 下 Virtual Reality SDKs 为 Windows Mixed Reality 即可
- 回到 Build Settings 界面,勾选 Unity C# Projects
- 点击 Build ,在弹出框里创建 APP 文件夹 并选择它
- 在 MixedRealityToolkit 的当前版本有个bug,编译时报错
- 提示 Assets/HoloToolkit-Examples/SpatialMapping/Scripts/PlaneFindingTest.cs(114,135): error CS0619: `UnityEngine.EventType.ignore' is obsolete: `Use Ignore instead (UnityUpgradable) -> Ignore'
- 就是这个 PlaneFindingTest.cs 里这行代码 UnityEditor.Handles.ArrowHandleCap(0, center, Quaternion.FromToRotation(Vector3.forward, normal), 0.4f, EventType.ignore); 的 EventType.ignore 枚举已经过时弃用了
- 修改为 EventType.Ignore 即可修复
- 再重新 Build 等待进度条完成
6.编译和发布
- 上一步的 Build 完成后会在 APP 文件下生成一个 Visual Studio 的解决方案
- 打开 APP\Hololens_HelloWorld.sln 的解决方案
- 在 Hololens_HelloWorld 项目上右键点击 生成
- 生成完成后,修改 解决方案平台 为 x86 ,运行环境选择 HoleLens Emulator

- 点击 HoleLens Emulator 将项目运行起来
- HoleLens Emulator 就会启动并自动将项目发布到 HoleLens Emulator 中
- 最终效果

Microsoft HoloLens 开发(2): 运行Hello World的更多相关文章
- Microsoft HoloLens 开发(1): 搭建 HoloLens 开发环境
1.硬件配置 64位 Windows 10 专业版, 企业版, or 教育版 (注: 家庭版不支持 Hyper-V 或者 HoloLens emulator) 64位 CPU 4核CPU (或者大于4 ...
- Microsoft HoloLens 开发(3): 全息图交互方式 - Gaze
Gaze(凝视) 是 HoloLens 交互输入的第一种形式,告诉你 用户 在世界上的位置,并让你确定他们的意图. 1.Gaze的用途 作为一个 Mixed Reality 开发者,Gaze 可以做很 ...
- HoloLens开发手记 - 应用程序模型 App model
HoloLens使用Universal Windows Platform (UWP)提供的应用模型.UWP应用模型定义了应用如何被安全和完全地安装.更新.版本控制和移除.它管理了应用生命周期 - 应用 ...
- Hololens 开发环境配置
安装 Hololens SDK 转自 Vangos Pterneas, 4 Apr 2016 CPOL 5.00 (1 vote) vote 1vote 2vote 3vote 4vote 5 ...
- HoloLens开发手记 - 使用HoloLens模拟器 Using HoloLens emulator
首先下载HoloLens模拟器 HoloLens模拟器运行在没有真机的情况下在你的PC上测试应用,属于HoloLens开发工具系列.模拟器使用了Hyper-V虚拟机.通常通过传感器获取的人体和环境输入 ...
- Hololens 开发环境配置(转)
转自 Vangos Pterneas, 4 Apr 2016 CPOL 5.00 (1 vote) vote 1vote 2vote 3vote 4vote 5 The past few days h ...
- 【祥哥带你玩HoloLens开发】了解如何实现远程主机为HoloLens实时渲染
今天有一个兄弟在群里讲到他们的项目模型比较大,单用HoloLens运行设备的性能无法满足需要,问道如何将渲染工作交给服务器来做,讲渲染结果传给HoloLens.正好刚刚看官方github的时候发现一个 ...
- Hololens开发笔记之连接PC实现资源共享
官网原文介绍:https://developer.microsoft.com/en-us/windows/holographic/using_the_windows_device_portal Hol ...
- Microsoft Hololens 入门系列-01-开篇
1.能做什么 Microsoft HoloLens是第一台运行Windows10系统的全息计算机,它已经不受任何限制——没有线缆和听筒,并且不需要连接电脑.Microsoft Hololens能够让你 ...
随机推荐
- 'this' pointer in C++
The 'this' pointer is passed as a hidden argument to all nonstatic member function calls and is avai ...
- 【Linux】【Services】【SaaS】Docker+kubernetes(7. 安装Docker私有镜像仓库)
1. 简介 1.1. 自己做个私有镜像,方便上传和下载,我也在docker官网注册了一个账号,做好的镜像可以传上去 1.2. Redhat自带私有镜像的功能,需要安装包,这是howto: https: ...
- Maven项目打包成war包并启动war包运行
1 项目打包 1.1 右键点击所需要打包的项目,点击如图所示 Maven clean,这里 Maven 会清除掉之前对这个项目所有的打包信息. 1.2进行完 Maven clean 操作后,在ecli ...
- lucene索引的增、删、改
package com.hope.lucene;import org.apache.lucene.document.Document;import org.apache.lucene.document ...
- 通过DT10获取程序执行过程中的实时覆盖率
DT10是新一代的动态测试工具,可以长时间跟踪记录目标程序执行情况,获取目标程序动态执行数据,帮助进行难于重现的Bug错误分析,覆盖率检测,性能测试,变量跟踪等等功能. 系统测试覆盖率,通常是用于判断 ...
- 控制 Python 类的序列化过程
问题 有的类是不支持在多进程间传递的,如果非要这么做,可能会引发奇怪的现象.比如下面这段代码: from concurrent.futures import ProcessPoolExecutor, ...
- JS自动播放音频 无效chrome设置 (Uncaught (in promise) DOMException: play() failed because the user didn't interact)
Chrome的autoplay政策在2018年4月做了更改.新的行为:浏览器为了提高用户体验,减少数据消耗,现在都在遵循autoplay政策,Chrome的autoplay 政策非常简单 muted ...
- MySQL 定时器
mysql定时器是系统给提供了event,而oracle里面的定时器是系统给提供的job.废话少说,下面创建表:create table mytable (id int auto_increment ...
- clickhouse配置登录密码
执行 PASSWORD=$(base64 < /dev/urandom | head -c8); echo "123456"; echo -n "123456&qu ...
- 【LeetCode】141. Linked List Cycle 解题报告(Java & Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 双指针 保存已经走过的路径 日期 [LeetCode ...