【问题标题】:Hololens application stopping at splash screenHololens 应用程序在启动画面处停止
【发布时间】:2018-02-10 16:00:33
【问题描述】:

我正在为 Hololens 开发一个 Unity 项目,该项目使用相机捕捉图片,将它们发送到照片识别 API 并显示结果。该项目在统一方面工作得非常好,但在模拟器/ Hololens 上却不行。

不幸的是,我一次写了很多代码,所以我不知道这个问题是从什么时候开始的。在构建项目并以调试模式在 Hololens/模拟器上运行它后,问题就出现了。在 Hololens 上,我看到了启动窗口(打开任何应用程序后看到的窗口)。放置后,我在 Visual Studio 的“输出”窗口中看到 End showing splash screen.,但它不再继续(但也不会冻结,什么也不做)。

我不知道它来自哪里,因为没有抛出异常,但我怀疑相机是原因。之前,我不得不注释这行代码:

transform.position = Camera.main.ScreenToWorldPoint(new Vector3((CameraManager.Resolution.width * .5f), (CameraManager.Resolution.height * .5f), 10));

因为函数ScreenToWorldPoint 抛出了以下异常:

Screen position out of view frustum (screen pos 0.000000, 0.000000, 10.000000) (Camera rect 0 0 0 0)

如您所见,相机矩形的大小为 0。我什至尝试直接记录相机的尺寸以确保 (Debug.Log(Camera.main.pixelWidth + ", " + Camera.main.pixelHeight)),果然,它们在 Hololens/模拟器上是 (0, 0)。

我确保网络摄像头受支持,并且我的摄像头设置已全部设置,但这也无济于事。

所以我不确定这是问题的原因还是仅仅是症状。而且我无法从任何地方开始,因为输出和错误窗口都没有显示任何错误。任何帮助或建议将不胜感激。

感谢阅读!

编辑:Here's从头到尾的整个输出日志。

Edit2:我不知道这是否重要,但如果我暂停执行(在 Visual Studio 中),它似乎总是在 Build/ProjectName/App.css => 第 78 行:

[MTAThread]
static void Main(string[] args)
{
   var app = new App();
   CoreApplication.Run(app); //<===== Here
}

【问题讨论】:

    标签: camera hololens


    【解决方案1】:

    您可能想要检查您的任何 Start() 方法。您可能有一些 CPU 密集型代码。即使它在 Unity 中运行流畅,并不意味着它会在 HoloLens 上轻松运行,因为它们的 CPU 并不强大。

    另外,为了避免任何相机问题,请使用此相机预制件 存储库: https://github.com/Microsoft/MixedRealityToolkit-Unity

    这些只是一些想法,希望对您有所帮助!

    【讨论】:

    • 感谢您的回答!不幸的是,尽管它不起作用;大多数 Start() 方法都是完全正常的,我已经在使用相机预制件了。
    • 哦,很高兴您发现了问题!
    【解决方案2】:

    原来我没有在 PlayerSettings 的其他设置下启用“支持虚拟现实”。这真的很愚蠢,但我希望这对某人有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多