我正在使用Windows Mixed Reality耳机(联想资源管理器)和Unity进行一个小型游戏项目。我当前正在运行最新的MRTK v2.1版本。
我正在使用自定义的右手控制器。这是一个预制件,其中主要对象包含以下组件:
WindowsMixedRealityControllerVisualizer
脚本IMixedRealityInputHandler
)来管理对动作(射击,跳转等)的输入除了组件之外,它还有一个子对象,这是我要渲染的对象的3D模型预制件。它在一个孩子里,所以我可以正确地把它放一些偏移量。 AFAIK,这不是问题。这整个都是它自己的预制件,然后在全局右手控制器模型下添加到自定义MixedRealityControllerVisualizationProfile
中。总的来说,这就像我想要的那样工作。控制器正确显示在我的右手上,输入的行为也像我想要的一样。
我的问题是,在游戏中,当我单击 Home 按钮(Windows徽标)以显示浮动菜单时,再次单击该按钮回到游戏中时, strong> new 控制器会在0,0,0(或返回游戏时我的手所在的位置)处产生;不过,我手上仍然有一个,也这个新的输入也以同样的方式响应输入。如果我再次打开/关闭“主页”按钮,将重复此操作,最终会产生几个控制器。因此,当我 shoot 时,会同时从我的手和0,0,0处的新控制器(或当时我已经在场景中结束的尽可能多的控制器)中射击
我不认为我的控制器曾经失去过跟踪功能,所以IDK为什么mrtk会产生新的跟踪。我考虑过要检查场景中是否有多余的控制器对象,并在每次更新时手动将其删除,但这听起来很愚蠢,必须在某处进行某些配置才能确定是否可以解决此问题?可视化脚本不解决这个问题吗?
我在网上四处张望,但尚未找到任何具体的信息。任何线索都会受到欢迎。
答案 0 :(得分:1)
这听起来像是MRTK中的错误。我建议在https://github.com/microsoft/MixedRealityToolkit-Unity/issues
的github存储库中进行归档和发布