Unity 2018.1.3f1 UI闪烁问题

时间:2018-10-30 06:04:48

标签: c# android ios user-interface unity3d

自从我们将Unity版本从Unity 5.4.3f1更新到Unity 2018.1.3f1以来,我们的团队一直在遇到UI闪烁问题。它仅显示在内部版本(Android / iOS)上,但不会在编辑器上发生闪烁。注意:我们的UI分层已设置完毕。

我们尝试过但无法解决的问题:

  • 将主摄像头的transparentSortMode从默认值更改为“正交”。
  • 打开/关闭画布组件而不是GameObject本身。
  • 在预制件的z轴上添加了一些值(例如0.05、0.1、1等)

有人遇到这种问题吗?如果是这样,请告诉我们您针对此类问题的解决方案(或可能的解决方案)。任何答案将不胜感激。

2 个答案:

答案 0 :(得分:1)

您尝试实例化UI了吗,例如,可以使用协程对其进行测试,速度较慢。因此,与其在一个函数中例如在一个框架中实例化UI,不如尝试使用协程。

IEnumerator PrepareUI()
{
   //Instantiate UI - 1
   yield return new WaitForEndOfFrame();
   //Instantiate UI - 2
   yield return new WaitForEndOfFrame();
}

在我尝试使用它而不是在某些最终以WaitForSeconds(float)结尾的帧结束之前,这对我有用,并且显示出明显的改进。

答案 1 :(得分:0)

我遇到了同样的问题。确保仅在需要时更新 UI,因此不要在 Update() 上放置任何代码,并且仅在事件上更改 UI 元素。 例如,如果您有分数值,请不要在 scoreUI.text = score 函数中设置 Update,而是可以创建一个属性,在分数更改时更新 scoreUI。 您的问题可能是您在 Update() 上激活或停用 UI 元素,因此请找到另一种方法。