Cocos2D: ¿redeclarando el caché de cuadros?

Tengo esto declarado en mi clase principal:

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

ahora estoy en otra clase y quiero crear un nuevo batchNode pero obtener spriteFrames de atlas, que se declaró en la clase principal. ¿Cómo puedo hacer eso? ¿Necesito volver a poner estas mismas líneas en mi otra clase? Al hacerlo, ¿tendré imágenes redundantes importadas a sharedSpriteFrameCache? Mi idea es ahorrar memoria, no desperdiciarla.

¿Alguna pista? Gracias.

preguntado el 12 de junio de 12 a las 16:06

1 Respuestas

No necesitas llamar [[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"atlas.plist"]; de nuevo, suponiendo que no haya eliminado estos marcos de sprites.

Deberá crear otro nodo por lotes para colocar sprites.

Si intentara agregar los marcos de sprites al caché nuevamente, no desperdiciaría espacio, los marcos de sprites solo se agregarían una vez, pero perdería tiempo mientras cocos2D analiza el archivo y determina si cada marco de sprites realmente tiene ya ha sido agregado.

Respondido el 12 de junio de 12 a las 16:06

Gracias. ¡Esto es lo que necesito! 😃 - Pato

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.