【发布时间】: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
}
【问题讨论】: