これが可能かどうかはわかりませんが、1 つの大きなテクスチャ アトラスを作成し、それをアプリケーションのすべてのクラスで使用したいと考えています。
1 つの CCSpriteBatchNode を複数のクラスに使用できますか?
メインクラスでこれを作成するとします
[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"atlasGeral.plist"];
self.batchNodeGeneral = [CCSpriteBatchNode batchNodeWithFile:@"atlasGeral.png"];
[self addChild:self.batchNodeGeneral];
次のように、CCSpriteBatchNode を使用する前に、初期化されたメイン クラスで CCLayers を作成する別のクラスがあります。
-(id) init
{
if( (self=[super init])) {
self.bg = [CCSprite spriteWithFile: @"cCircularBG.png"];
[self addChild:self.bg];
self.dr = [CCSprite spriteWithFile: @"cCircularDR.png"];
[self addChild:self.dr];
}
return self; // self is a CCLayer
}
これは、メイン クラスの self.batchNodeGeneral を使用して最適化できますか? 私の考えは、これら 2 つのスプライトと他のスプライトを[CCSprite spriteWithSpriteFrameName:...]のようなものに置き換えることです。
ありがとう