Unity 3D中的单个画布和多个面板与多个画布

时间:2018-10-08 21:37:03

标签: user-interface unity3d canvas

我正在使用Unity 5为Hololens开发全息应用程序,我需要创建一些UI,那么哪种近似方法可以提供更好的性能?

具有多个面板或多个画布的单个画布?

我需要多个UI元素(文本标签,按钮等),它们的位置不同,尤其是Z轴值也不同。

1 个答案:

答案 0 :(得分:3)

Unity伙计们特别对过去的某些Unite进行了有关UI画布的性能讨论。您将不会在Unity的YouTube频道上找到它(编辑:此处为-Unite Europe 2017 - Squeezing Unity: Tips for raising performance)。基本上,他们看到具有更复杂的UI的项目中出现性能问题的趋势。问题来自以下事实:修改一个UI元素时,会将其整个画布层次结构标记为脏。他们(团结)极力鼓励在自己的画布中分离不同的ui部件。特别是每帧(或太频繁)更新的元素应放在小块的单独画布中,例如健康栏,滚动清单等。当然,不要在每个元素的另一端使用画布,而要明智地使用不同的UI部件和动态UI元素。普通的gameObject层次结构具有相同的问题,但是与UI相比,重新计算整个层次结构的性能损失较小。