CCSpriteBatch Nodeとスタンプセットの使用概要

4707 ワード

(転載は出典を明記します.ありがとうございます.http://www.cnblogs.com/binxindoudou/archive/2013/03/25/2980704.html:)
これはネット上で多くの説明がありますが、多くは煩雑すぎて、簡単に言えば、CCSpriteBatch Nodeはレンダリング回数を減らすことができます.
次の3つの例はゲームレベルのボタンの例です.各ステージの画像を1枚のlevels.pngに入れて、名前で読み取ります. 
1.CSpresteBatch Nodeの単独使用
 1 //     100 

 2 CCSpriteBatchNode *batchNode = [CCSpriteBatchNode batchNodeWithFile:@"bullet.png"];

 3 //        

 4 [self addChild:batchNode];

 5 //              

 6 for(int i = 0 ; i < 100; i++)

 7 {

 8      CCSprite *sprite = [CCSprite     spriteWithSpriteFrameName:@"bullet.png"];

 9      [batchNode addChild:sprite];

10 }    
2.スタンプセット単独の使用
1 [[CCSpriteFrameCachesharedSpriteFrameCache] addSpriteFramesWithFile:@"levels.plist"];

2 CCSprite *sprite = [CCSpritespriteWithSpriteFrameName:@"level1.png"];
3.CCSpriteBatch Nodeとスタンプセットの併用
 1 //     levels.plist  ,         levels.png                       ,      

 2 [[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"levels.plist"]; 

 3 //          ,            ,      ;  levels.plist           ,            

 4 CCSpriteBatchNode *batchNodeOfLevels = [CCSpriteBatchNode batchNodeWithFile:@"levels.png"]; 

 5 //   batchNode     ,  batchNode         

 6 [self addChild:batchNodeOfLevels]; 

 7 //                   

 8 CCSprite *spriteOfLevelOne = [CCSprite spriteWithSpriteFrameName:@"level1.png"]; 

 9 //           batchNode ,       ,    ,      ,           ,      

10 [batchNodeOfLevels addChild:spriteOfLevelOne]; 
以上は自分の学習ノートだけです.何か問題があれば、一緒に検討しましょう.
(転載は出典を明記します.ありがとうございます.http://www.cnblogs.com/binxindoudou/archive/2013/03/25/2980704.html:)