2010-03-29 5 views
0

У меня около 255 кадров изображения для фоновой анимации, 99 кадров вражеского спрайта и 125 кадров игрового спрайта. Все анимации запускаются одновременно на экране. Это фоновая анимация работает, и на экране присутствуют 4-5 врагов, одновременно есть и игрок.Анимационное управление в COCOS2D iphone

Взгляните на приведенный ниже код,

CCAnimation *_enemyAnimation = [CCAnimation animationWithName:@"Enemy" delay:0.1f]; 
    for (int i = 1; i<99; i++) { 
     [_enemyAnimation addFrameWithFilename:[NSString stringWithFormat:@"enemy %02d.jpg",i]]; 
    } 

    id action1 = [CCAnimate actionWithAnimation: _enemyAnimation]; 
    [_enemySprite runAction:[CCRepeatForever actionWithAction: action1]];  
    [self schedule:@selector(BackToGameLogic:) interval:5.0]; 

Это делает мою игру слишком медленно и потребляет память о 65MB в распределении.

Как мне управлять моими анимациями, чтобы улучшить скорость, а потребление памяти сократится ?.

Пожалуйста, предложите мне путь.

Спасибо.

ответ

0

Сделайте свою анимацию из листа спрайтов. Листы спрайтов вызывают только буфер на один лист, поэтому вы получаете заметное улучшение по сравнению с отдельными jpg на каждый кадр.