Cocos2d Spritesheet。使用Spritesheets是不是我不能设置sprite的Z顺序?

时间:2013-11-05 20:10:02

标签: cocos2d-iphone

我在一些论坛上看到在Cocos2d中使用Spritesheets我无法设置属于同一个Spritesheet的精灵的Z顺序。这是真的吗?

1 个答案:

答案 0 :(得分:2)

不,这是不正确和不准确的。 spritesheet是一个纹理图集,你可以用纹理图集创建的精灵做任何事情。

如果使用CCSpriteBatchNode,则可以将zOrder用于添加到同一节点的所有sprite,但是会根据批处理节点顺序及其zOrder对多个批处理节点及其各自的子sprite进行排序。因此,如果在击球技术B后面击球,那么B的任何一个孩子都不能被分类到任何一个战斗机A的精灵身后。

然而,即便如此,您仍然可以通过启用深度缓冲和使用vertexZ属性(即“真正的”OpenGL深度值),自由地对具有多个批处理节点的批处理精灵进行z顺序。它有点慢,但消耗更多内存。