0

概述

我在开发基于 HoloLens 环境的软件时遇到了一个奇怪的问题。

我在 Unity 上构建了一个项目并导入了混合现实工具包 (MRTK) 包。按照官网的说明,我将 FBX 模型从 City Engine 导出到 HoloLens,Unity 控制台没有提示任何错误。

那么问题来了,当我使用VS 2017在Hololens中调试提议的程序时,HoloLens System就终止了,HoloLens的界面显示如下信息:“trying to map your around”(图1)。

在此处输入图像描述

2018.11.15 更新

我重建了这个项目并导出到 Hololens Emulator,发生了这个错误。

 If your machine has multiple graphics adapters, Unity may have created a WindowContext on the wrong adapter. If you experience a black screen when playing, please restart the Editor.
 
(Filename: C:\buildslave\unity\build\Runtime/VR/VRDevice.cpp Line: 218)


The referenced script on this Behaviour is missing!
 
(Filename: C:\buildslave\unity\build\Runtime/Mono/MonoBehaviour.cpp Line: 1510)


The referenced script on this Behaviour (Game Object 'International City_0') is missing!
 
(Filename: C:\buildslave\unity\build\Runtime/Mono/MonoBehaviour.cpp Line: 1753)


Setting up 1 worker threads for Enlighten.

  Thread -> id: 550 -> priority: 1 

UnloadTime: 6.645600 ms

Holographic Tracking State Lost. New State: 1
 
(Filename: C:\buildslave\unity\build\Runtime/VR/HoloLens/HoloLensWorldManager.cpp Line: 166)


Failed to get spatial stage statics - can't retrieve or interact with boundaries! Error code: '0x80040154'.

Hololens Emulator 中的结果 显示图片


但是,我注意到当 HoloLens 崩溃时 Unity 控制台没有显示任何错误。所以我做了以下测试来解决这个问题:

1 基于这个项目,我把所有的脚本和其他模型都去掉了,只留下MRTK配置的模型和场景(相机、光标、输入模块)。这没用。

2 基于这个项目,我用示例CUBE模型替换了FBX模型,其他保持不变。当我将修改后的项目发布到 HoloLens 时,没有出现这样的问题。

3 最后,我尝试将MRTK包去掉,只留下FBX模型,将release模型编译到Windows平台。程序运行正常,没有报错。

FBX 模型的大小约为 27 MB(图 2):

在此处输入图像描述

这些问题是HoleLens和FBX模型不兼容造成的吗?

我怎么解决这个问题?

Unity 编辑器版本

2017.2.1f1

混合现实工具包发布版本

2017.2.1.4

4

0 回答 0