fairyBatching没有对隐藏物体进行drawcall优化

这个界面开启了fairyBatching,还是占了8个dc,原因是hudItem里面有很多隐藏组件,如果我把这些隐藏的组件从工程里面删除了,就只剩下2个dc了,是不是应该在DoFairyBatching的时候排除掉隐藏的物体
TIM截图20180530131349.png TIM截图20180530131507.png
已邀请:

azaz569

赞同来自:

我在Container.CollectChildren这方法中加入这行代码能起到明显的优化效果,不知道是否会引起其他的问题?

谷主

赞同来自:

你没上代码,不知道你怎么做隐藏的。正确的方法应该是用显示控制器,这样隐藏的东西是不会出现在显示列表的,就不会出现你说的情况了。但如果你是一个个用api设置visible的话,那就不一样了,他们虽然不可见,但仍然在显示列表里,还是会消耗一定CPU的。
 
在CollectChildren里加那个判断,我看是可以的。不过还要认真测试一下才能确定。

azaz569

赞同来自:

请问谷主有没有在代码中隐藏组件,用的是显示控制器隐藏逻辑的接口。组件中小物体的数量太多。

谷主

赞同来自:

removeChild啊。不都说了要移出显示列表吗。

要回复问题请先登录注册