在Cocos2d-x 3.x中官方优化了引擎渲染的过程
例子
假如有A,B,C三个在不同plist的纹理,且他们的材质不相同,如果程序中
A-1 (表示 addChild(A,1),以下一样)
B-1
C-1
Cocos2d-x引擎首先会根据所有子节点ZOrder从小到大依次绘制,在这里ABC都是1,但是ABC材质都不相同,所以
Draw calls = 3
假如程序中是
A-1
B-1
A-2
和上面一样分析,Cocos2d-x引擎首先会根据所有子节点ZOrder从小到大依次绘制,在这里AB都是1,先绘制,但是AB材质都不相同,所以此时
Draw calls = 2,接着A-2绘制A,Draw calls = 3
假如程序中是
A-1
A-2
B-3
从小到大依次绘制,在这里两个A先绘制,且材质都相同,所以此时
Draw calls = 1,接着绘制B-3,Draw calls = 2