问题描述
在Unity 2019中为HoloLens 2构建应用程序时,我开始使用MRTK (Mixed Reality Toolkit)。在运行游戏预览时,我反复遇到应用程序无法正常运行的问题,正如Unity中所期望的那样。但是,一旦我将应用程序构建并部署到实际的HoloLens 2中,它将无法正常运行。
首先,the app was in a window similarly to here。然后,一旦删除窗口,应用程序就好像stuck to the user's face一样移动,而不是随着用户在其周围移动而保持静止。最后,手和手臂的识别无效。
我遵循了所有code examples,并且我知道我的脚本可以正常工作,因为它们可以在Unity中正常工作。那怎么了?为什么该应用程序可以在Unity中运行但不能在HoloLens本身上运行?
解决方法
这花了很多时间和反复试验,因为这些问题与我的代码不直接相关,而与MRTK的配置直接相关。这些问题是由于Unity中(现在)的旧版XR(混合现实)系统与新XR系统之间的过渡造成的。如果您遵循设置on this page,则说明您使用的是旧版XR系统,因此需要过渡到新系统。按照steps here在系统之间进行转换。还要确保将TrackedPoseDriver添加到相机as described here。
请注意,从Unity 2020开始,新的XR管理系统将是Unity中的唯一选择,因此,从该版本开始的新项目应该不会遇到此问题。
希望这种经历能帮助其他人避免同样的问题!