【Unity+HoloLens2】从0开始在HoloLens2部署MR工程
前言
HoloLens2部署的权威教程在微软的官方文档中,但有些问题其实官方文档并没有列出,所以在实际开发过程中如果遇到bug,就需要自身或者前人的经验去解决。
比如:
对于Hololens2来说,在VS中需选择ARM64而不是x86。部署需要有良好的网速;工程打包出来的文件路径和工程路径有关联,如果这两个路径不匹配,部署就会失败。部署后打不开可能是因为Unity中未添加需要部署的场景,在Build Settings中点击Add open Scenes。
以下所述内容均为个人实践过程中所得经验,参考链接有:
https://docs.microsoft.com/zh-cn/windows/mixed-reality/develop/unity/tutorials/holograms-100#chapter-6—build-and-deploy-to-device-from-visual-studio
https://docs.microsoft.com/zh-cn/windows/mixed-reality/develop/platform-capabilities-and-apis/using-visual-studio
https://docs.microsoft.com/zh-cn/windows/mixed-reality/develop/unity/tutorials/mr-learning-base-02#building-your-application-to-your-hololens-2
本人部署过程中使用到的各类环境:
电脑:Win10,i9,i7,i5
硬件:Microsoft Hololens 2
软件:Unity 2019.4.11f1,Visual Studio2019
环境:MRTK2.5.9,Windows SDK10.19041.0
部署不强调顺序,设置正确即可。
正文
注意:需要部署到Hololens上的工程,一开始就应该选择UWP平台。
(1)Project Settings
菜单栏选择Edit->ProjectSettings->Player,检查是否切换到UWP平台
点击倒数第二栏的Publish Settings -> 然后拉到最底部,找到Capabilities一栏。
找到Capabilities之后,根据项目的需要进行勾选。
必选项1:空间感知
必选项2:凝视输入
必选项3:麦克风
将Capabilities这栏折叠,它下面的一栏就是Supported Device Families,展开它,选择其中的Holographic(全息投影)
折叠刚刚的Supported Device Families,下面有一栏XRSettings,展开它,设置如下:
首先要勾选VR Supported,这时unity可能会自动导入一些东西。
导入完之后,在Virtual Reality SDKs里面,将深度Depth Format 修改为16-bit depth,并且勾选Enable Depth Buffer Sharing。
(2)Build Settings 部署设置
将场景添加到部署列表的方法:
1.在unity的Project中,双击打开你需要部署的某场景,
2.打开Build Settings面板,(unity菜单栏左上角File->Build Settings)
3.点击Add Open Scenes,当前场景就会添加到部署列表中。
左边一栏Platform,是指你的工程需要部署到什么平台,因为要部署到HoloLens,所以需要选择第二个UWP(通用平台),接着在右边一栏进行设置,参考图中设置。
第四栏SDK版本需要说明一下,目前HoloLens里的Windows SDK版本为10.0.19041.0,如果这个SDK版本更新了,你就应该去装一个相对应版本的SDK。
SDK是在VS中安装的,如果你没装,这一栏就会无法选择。现在介绍一下SDK的安装方法:
打开vs installer,
点击工具->获取工具和功能,
选择’单个组件’,查找windows sdk,安装10.0.19041.0(根据自己的HoloLens的sdk版本选择)。
然后点右下角的修改按钮,安装完之后,需要重启Unity才能生效。
至此,SDK安装完毕。
如果有下图这样的黄色小三角提示,说明还差一些东西需要安装。
到底差了什么东西呢?缺少的是ARM64生成工具,同上理,在vs installer 中“单个组件”查找下图的这两个组件,并安装它们。
装完这两个后,重新打开工程,三角报警消息便会消失了。
最后一点,VS需要安装一下C++通用平台,之后部署需要。
如果你已经看到了这里,不如回想一下,我们刚刚所做的一系列设置都是针对于unity中的,也就是打包阶段,下一阶段才是部署阶段哩。
(3)打包
上述的很多设置只需要做第一次,之后就不需要重新修改了,除非你建立了一个新项目,那么,得重新设置一遍。
激动人心的打包终于开始了!在确认工程没有报错、没有设置错误后,点击Build Settings里右下角的Build按钮,它会提示你选择一个文件夹,你需要自己创建一个文件夹,存放打包出来的文件。
我这里在D盘下,创建了文件夹HololensBuilds,专门放build文件。
当然,如果build失败,原因多种多样。可能是设置不对,可能是脚本有错(摊手)。
开发者选项的设置:
在设置——更新和安全——开发者选项里,打开第一个按钮,“从任意源安装应用”。
当弹出以下的说明框,选择“是”。
接着打开第二个按钮——启用通过局域网连接进行远程诊断的功能,在第一次启用时,会弹出下图所示的提示,选择“是”。
这时需要等它安装完毕,才能进行下一步,安装提示如下图。
安装完成后,就是下面图这样子了:
此时,需要填写用户名和密码,填写完点击应用。这里的用户名和密码完全是自定义的,只要自己能记得住就可以。
鼠标滚轮往下滑,打开设备发现,如下图所示。
打开后,提示需要重启,重启后红字会消失。
至此,开发者选项设置完毕,请关闭开发者选项,保存电脑数据,重启。
(4)开始部署
unity成功打包出工程后,在文件资源管理器中,找到打包出的工程文件,用VS打开里面的.sln文件。如下图。
这里使用USB部署方法。在VS的设置栏中,选择Release(发布)、ARM64、设备。如下图。
如果目标选项中没有“设备”,则可能需要将 Visual Studio 解决方案的启动项目从 IL2CPP 项目更改为 UWP 项目。 在“解决方案资源管理器”中,右键单击“YourProjectName (通用 Windows)”并选择“设为启动项目”。
将HoloLens2通过一根USB数据线,和电脑的USB端口连接。
点击vs中的开始执行(不调试)。
第一次部署时需要配对HoloLens中出现的PIN码。这里需要用HoloLens操作。
戴上HoloLens,先用手部召唤出菜单,接着选择设置-开发者选项-配对,将出现的六位数PIN码输入到电脑中。
如果部署成功,出现的结果如下。同时HoloLens菜单里会多出一个app。
如果出现生成成功,而部署失败,需要从本文第(4)小节重新开始部署。
如果出现生成失败,需要从第1步开始重新build,并且要检查工程的设置是否正确。
部署成功后,就可以拔掉HoloLens连接着的USB数据线,并戴上它,打开工程。
打开工程可能出现的问题:
- 打开工程后若什么都没看见,可能是因为build settings中未添加场景(去看第(2)小节)。
- 打开工程后若很卡,可能是场景资源问题,或者脚本问题,建议在场景中放一个debug窗口,查看报错信息。
在电脑端登录HoloLens设备门户
这是一个很有用的系统员操作界面,可以查看HoloLens的各种信息,比如存储的相片,视频,也能将HoloLens所看到的全息影像投到电脑屏幕中。
先查看Hololens的IP :召唤菜单栏,打开设置->网络和Internet->硬件属性,记住192.开头的一个IP地址。
在浏览器中输入HoloLens中显示的IP地址
弹出警告框后,选择高级->继续前往
接着需要验证用户信息。若此台Holo未设置过用户名和密码,会要求设置;如果已经设置过了,就输入用户名和密码。(也就是之前在开发者选项中设置的用户名与密码。)如果密码忘了,也没关系,只要输错次数足够多,就会触发重置用户名密码的功能。
【Unity+HoloLens2】从0开始在HoloLens2部署MR工程相关推荐
- Unity NGUI 3.0.4版本 制作网络版斗地主
Unity NGUI 3.0.4版本 @by 灰太龙 开发环境 Win7旗舰版 Unity 4.2.1f4 本文就写个开门篇,告诉大家怎么用NGUI,第一步导入NGUI 3.0.4版本! 1.启动U ...
- Ubuntu GitLab CI Docker ASP.NET Core 2.0 自动化发布和部署(1)
相关博文: Ubuntu 简单安装和配置 GitLab Ubuntu 简单安装 Docker Ubuntu Docker 简单安装 GitLab Ubuntu Docker 安装和配置 GitLab ...
- Flume1.5.0的安装、部署、简单应用(含伪分布式、与hadoop2.2.0、hbase0.96的案例)
原文地址:http://www.cnblogs.com/lion.net/p/3903197.html 目录: 一.什么是Flume? 1)flume的特点 2)flume的可靠性 3)flume的可 ...
- redis 3.0的集群部署
2019独角兽企业重金招聘Python工程师标准>>> redis 3.0的集群部署 博客分类: 缓存 文章转载自:http://hot66hot.iteye.com/blog/20 ...
- wildfly-9.0.2 web项目部署详细步骤
http://www.cnblogs.com/101key/p/5131546.html 一.配置操作系统环境变量 JAVA_HOME = C:\Program Files (x86)\Java\jd ...
- Spark2.1.0 + CarbonData1.0.0集群模式部署及使用入门
1 引言 Apache CarbonData是一个面向大数据平台的基于索引的列式数据格式,由华为大数据团队贡献给Apache社区,目前最新版本是1.0.0版.介于目前主流大数据组件应用场景的局限性,C ...
- 搭建京东客京推推CMS2.0导购网站部署教程,新手教程带视频
京东优惠券网站搭建(京推推CMS优惠券导购网站搭建教程) 高清视频教程地址:https://www.ixigua.com/i6492560653939638797/ 西瓜视频高清播放地址 看完不会搭建 ...
- Unity WebGL发布及Ubuntu Apache服务器部署
Unity WebGL发布及Ubuntu Apache服务器部署 Unity 中WebGL的设置 Ubuntu Apache web服务器搭建 网页修改 附一:Ubuntu 文件操作常用命令 附二:A ...
- Spark2.2.0集群搭建部署之【HADOOP集群篇】
软件准备信息,详见Spark2.2.0集群搭建部署之[软件准备篇] 基础配置信息,详见Spark2.2.0集群搭建部署之[基础配置篇] SSH无密访问,详见park2.2.0集群搭建部署之[无密访问篇 ...
最新文章
- unix odbc php 连接sqlserver,Ubuntu下通过unixODBC连接MS SqlServer2005
- deeplearning URL
- 《Deep Learning With Python second edition》英文版读书笔记:第十一章DL for text: NLP、Transformer、Seq2Seq
- 【读书笔记】程序员的自我修养总结(一)
- 超级终端工具_【招商通信余俊团队】智能网联汽车发展提速,科技巨头跑步入场,有望成为新一代超级终端——招商通信周周谈(2020年第48周)...
- 深入了解人工智能专业怎么样
- 给spring容器注册组件
- spss多元线性回归散点图_SPSS19.0实战之多元线性回归分析
- 2021SC@SDUSC Zxing开源代码(八)Data Matrix二维码(一)
- PS制作科幻特效的金色立体文字
- 微信企业号开发(一)
- java毕业设计_基于android的二手书城app的设计与实现
- 边缘人工智能芯片大放异彩
- 京东淘宝天猫API销量接口
- TypeError: an integer is required (got type bytes)
- c语言输入身高体重 计算体重指数,体重指数的计算公式正确的是
- 杂记 选一款心仪的听歌软件
- 微软2010(附下载地址),yozo,wps三种office的对比
- 第十八届全国大学生智能汽车竞赛 航天智慧物流创意组-线上赛多车协同侦察
- Dubbo之HelloWorld
热门文章
- Unity NGUI 3.0.4版本 制作网络版斗地主