Cocos2D - 重新声明帧缓存?

时间:2012-06-12 15:19:23

标签: cocos2d-iphone

我在主要班级宣布了这个:

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"atlas.plist"];
CCSpriteBatchNode *batchNode = [CCSpriteBatchNode batchNodeWithFile:@"atlas.png"];

现在我在另一个类上,我想创建一个新的batchNode但是从atlas获取spriteFrames,这是在主类上声明的。我怎么做?我是否需要将这些相同的行再次放在我的其他课程上?通过这样做,我会将冗余图像导入sharedSpriteFrameCache吗?我的想法是节省记忆,而不是浪费。

任何线索?感谢。

1 个答案:

答案 0 :(得分:1)

如果您没有删除这些精灵帧,则无需再次调用[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"atlas.plist"];

您需要创建另一个批处理节点来放置精灵。

如果您尝试再次将精灵帧添加到缓存中,您不会浪费空间,精灵帧只会添加一次,但是当cocos2D解析整个文件并确定每个精灵时,您会浪费时间确实已经添加了框架。