显示层级不对的问题

如下图,TileContainer和3个按钮是同级关系,并且3个按钮是显示在最后面的。但往TileContainer添加了10000个子组件后,3个按钮会被新创建出来的子控件挡住,这应该怎么处理呢。
已经设置了fairyBatching = false,而且为了观察过程,改成用协程来添加子组件,每添加1000个停1秒,在8000个之前层级是对的,在9000个时层级不对了...
FGUI-ask.png
已邀请:

谷主

赞同来自:

还能这样测试。。。。没有特别的设置吗,在unity的framedebugger里看看是怎么画的。

dyfllll

赞同来自:

Renderer.sortingOrder
该值必须介于 -32768 与 32767 之间。
https://docs.unity3d.com/cn/2021.3/ScriptReference/Renderer-sortingOrder.html
 
 
不知道是不是这个原因引起的,给meshrender赋值sortingOrder大于32767了
UpdateContext.renderingOrder会赋值到DisplayObject.renderingOrder再到meshRenderer.sortingOrder 
你的这个button里面有别的组件,9000个导致UpdateContext.renderingOrder大于32767,然后导致层级出现问题
要不直接用虚拟列表算了
 
 

要回复问题请先登录注册