一个节点下动态添加子节点怎么优化drawcall

一个节点下,需要动态添加删除子节点,子节点种类比较多,sprite合不到一个图集里(总大小超过2048很多),应该怎么优化dc?

子节点必须直接挂在父节点下,因为要用到zindex判断互相遮挡关系

求指导!

大概是:

  1. 优化层级结构;
  2. 开启动态合图。

动态合图不太好用,主要是我有好多帧动画,一张就900x900,所以感觉就算动态也不好用。。
层级结构的调整实在是没有思路,要zIndex起作用就必须都在一个父节点下面,我的想法是怎么能让用相同图册的子节点连续排列,但是因为要动态添加删除子节点,实在是想不出怎么才能保证这个顺序

求大佬指点个思路!

图集有多少个?比较少的情况可以考虑MultiTexture方案

互相遮挡复杂吗?如果简单可以考虑最上层物体最后再绘制一次。
最好上图

感谢!我研究一下!

我跟他的情况差不多,也是tiledmap上的人物建筑之类的互相遮挡,地图和人物都是随机的
image
主要是这些树都是帧动画,太大了。。。

我试了用setSiblingIndex是可以,但是他和zindex冲突了,好像渲染是优先考虑zindex的,我又必须用zindex做遮挡关系。。。

地表植被建筑应该是固定的吧,能动态变化么

你可以把所有的图合成一张静态的图

树可以被砍倒

多合并几张大图

目前也只能这样了。。虽然还是不能解决几个图册交错的问题