使用unity开发了一个hololens2手部菜单,在inspector里面按照教程配制好Tracked Device Graphic、Solver Handler、Hand Bonds、Hand Constraint(Plam up)这几个手部菜单解算的函数之后,上机测试。
问题:第一次展开手部的时候,菜单可以正常显示。但是当我停止展开手部的时候,菜单消失,再次展开手部也无法显示菜单。分析这个问题的原因,感觉问题应该是出在菜单意外销毁,无法重新进行显示。
研究半天发现,是我把GameObject.SetActive的目标设置错了,我把hierarchy中手部界面的整个物体Object全部销毁了,也就是SetActive(False)了整个object。
正确的做法如下图所示,应该将物体Object里面下属的界面object或者Canvas object设置SetActive(Ture or False),保留高层的主体object一直在场景中。

如上图这样设置GameObject.SetActive的目标之后,就可以实现正常的手部菜单隐藏和切换了。