最近,我开始将旧版Unity代码与早期版本的Tango / Unity SDK一起移植到最新版本。总的来说,它运作良好。一切帧速度更快,漂移更少,一切看起来都不错......直到:BLAM ......突然崩溃。所以,我尝试将我的应用程序削减到要点,看看我是否可以重现崩溃,我发现的是,如果我按照文档中的AR Unity示例,没问题。但是,如果我添加一个' FindPlane'在Update()函数内调用,所以我将一个球体放置在960,600(屏幕中间)的平面中心,几分钟后应用程序将崩溃。所以我怀疑这是导致我的大型应用程序崩溃的原因(可以说还有更多移动部件)。
我的问题是两部分:
1)任何人都可以建议一些调试过程,以帮助我确定问题的确切位置,以防它毕竟不是FindPlane函数吗?
2)有没有人知道为什么FindPlane函数可能会导致错误?即使它没有成功找到一个点,它仍然应该返回Vector3.zero和一个新的/默认的Plane对象,这两个都不应该导致崩溃。
感谢您对这个令人困惑的问题的看法。
编辑:我最近尝试安装和激活Tango-Debug-Overlay,它显示了一些诊断信息。问题似乎是热,从我所知,与深度传感器有关。所以现在我尝试设置一个非常低的FPS作为测试,并禁用帧之间的深度传感器,看看是否有任何影响。我会在发现信息时发布更新。