Hololens开发环境配置避坑指南
最近从南科大实验室借到了一台一代Hololens,然而配置正确开发环境、踩坑就花了一个星期,所以想着写篇文章来帮助大家避开一些暗坑…
软件基础配置
首先是一些基础配置,即安装Unity和Visual Studio, Unity安装就一路往下点就好,而VS安装的时候一定要确定.NET桌面开发和使用C++的桌面开发和通用Windows平台开发这几个组件一起安装,Unity可以独立安装也可以在VS installer 里一起安装,官方推荐的是分开安装。
详细的安装指南请看微软官方文档
官方安装指南
特别需要注意的是:需要官方安装指南里是没有说要安装“使用C++的桌面开发”这个组件的,但是这个是需要的。 因为新版Unity废弃了.NET作为编译后端。
参数配置
参数配置请看官方配置指南
需要注意的是,在后端选择时不要像下面的截图一样选择.NET,就选择IL2CPP好了,新版Unity会提醒说.NET 已经废弃
暗坑
接下来是一些暗坑 (STUPID Visual Studio)
找不到UWP SDK
在官方配置指南的Chapter 6 里需要Build & Deploy,在Hololens上测试程序。
而我试过安装VS2017和VS2019,使用Remote Device调试编译时,都会遇到找不到UWP SDK的问题,编译到最后会出一个error,大概是WindowsMobile SDK not found version = 10.0.xxxxx.
然而VS installer里已经安装了相应的UWP SDK…
我找了一个星期才找到解决方案,原网址
在这个report里微软竟然甩锅Unity,太过分了!
产生error的原因是:Unity和VS installer默认的UWP SDK安装目录都是在C/ Windows Kits, 然而(!!) VS在编译的时候竟然默认UWP SDK安装在C:\Program Files (x86)\Windows Kits里的!!!!
解决方案就只能是把C:\Windows Kits下的内容复制多一份到C:\Program Files (x86)\Windows Kits里,然后编译error解决。
然鹅…
Bootstrap return NULL instead of IPAdrress
本以为编译完成就可deploy到远程Hololens上了,然而,直接弹窗一个error: Bootstrap return NULL instead of IPAdrress…
这个在网上是查不到的error orz
然后一起开发的同学在微软看到了另一份指南(内容更新????),在里面用小字写着有可能出现的相关问题…
大概意思是:Unity build的solution如果是C#,在remote deploy的时候会自动弹出对话框,提示输入IP地址,但是如果是C++,则需要在project->properties->Configuration Properties -> Debugging ->Machine Name/ IPAdrress 里输入IP地址 (STUPID VS)
而现在Unity默认用IL2CPP的后端,如果按照新的Unity配置,又没有配置这个IP地址,则肯定会出现这个error然后又不知道怎么解决orz
所以遇到这个error,就在project->properties->Configuration Properties -> Debugging ->Machine Name/ IPAdrress,然后编译完成,然后会弹框提示输入pair pin。
Pair pin可以在HoloLens的setting-> update -> developer里找到。
最后
求求微软别开发软件了,专心开发硬件吧