使用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一直在场景中。

 

unity GameObject.SetActive
unity GameObject.SetActive

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

Leave a Comment

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注