图集测试

本次测试,我们要验证如下几点问题:

  1. 同一图集下的图片渲染时,只需要一次drawcall。
  2. 图集中的图片所在的节点,如果其子节点中还包含其他图片(非图集图片或其他图集图片),则图集的渲染减少效果将失效。
    例如:同一个节点下,有图集的图片1和图片2。那么渲染drawcall是1次,
    例如:同一个节点下,有图集的图片1和图片2,其子节点中还有非图集中的图片3。那么图集起的效果失败。drawcall将会是3,而不是2。

验证1:

图集测试_第1张图片
image.png

图集测试_第2张图片
image.png

图集测试_第3张图片
image.png

这时候图片都是散图,不是图集,我们运行,看到对应的drawcall: 2
图集测试_第4张图片
image.png

接下来,我们将这两张图片打在一个图集中。
图集测试_第5张图片
image.png

然后,修改图片节点所取的图片为图集中的图片。
图集测试_第6张图片
image.png

图集测试_第7张图片
image.png

再次运行,我们看到对应的drawcall变成了1
图集测试_第8张图片
image.png

问题1验证通过。


验证2:


图集测试_第9张图片
image.png

同层级下,节点scrollviewbg取散图。
节点goldcoin、gold分别取图集里的图片。
这时候,图集效果没有失效,运行时drawcall还是2次,


图集测试_第10张图片
image.png

接下来,我们将一个图集图片节点和散图图片节点,放在同一个节点下。如下两种情况:


图集测试_第11张图片
image.png

图集测试_第12张图片
image.png

再次看运行结果:


图集测试_第13张图片
image.png

drawcall变成了3次。 图集的批处理效果失效了。

你可能感兴趣的:(图集测试)