开发需求:
1、大地图,需要大量的草地格子进行平铺
问题描述:
1、创建3000个node(sprite)在同一层,使用同一个纹理,这时候是会渲染合批的
2、把这3000个node(sprite)移除舞台放入对象池
3、从对象池取出这3000个node(sprite)在放入舞台(还是同一层,但是3000个node的顺序和第1步可能不一样了),这时候渲染已经不合批了。
关联因素:
1、BATCHER2D_MEM_INCREMENT 是144,调大似乎可以解决(不确定是否有隐患)
2、渲染顺序在 sprite组件创建时就确定了(不太确定),所以node对象重用顺序打乱后相邻2的对象渲染顺序不连续导致不能合批。
问题:
1、在使用对象池node(sprite)的情况下,如果不调大BATCHER2D_MEM_INCREMENT,是否有方法实现合批渲染?
2、如果调大 BATCHER2D_MEM_INCREMENT,设成多少合适?
demo:https://cdn-applet.flash8f.com/pandaHomeLand/app/web_cn/testhepi.zip
demo说明:点击【重置】按钮后 draw call立马飙升