Как анимировать изображения разного размера в iOS7 SpriteKit?

Я использую текущий код для анимации моего узла спрайта.

        NSMutableArray *jumpUpTextures = [NSMutableArray arrayWithCapacity:10];
        for (int i = 0; i < 4; i++) {
            NSString *textureName = [NSString stringWithFormat:@"runnerJumpUp%d", i];
            SKTexture *texture = [SKTexture textureWithImageNamed:textureName];
            [jumpUpTextures addObject:texture];
        }

        SKAction *jumpUpAnimation = [SKAction animateWithTextures:jumpUpTextures timePerFrame:0.2]; 

Анимация работает хорошо, за исключением того, что одно изображение выглядит больше и размыто. У меня есть 4 изображения, которые имеют размер, как показано ниже:

runnerJumpUp0.png 62*56
runnerJumpUp1.png 62*56
runnerJumpUp2.png 62*56
runnerJumpUp3.png 47*56

Размер последнего отличается от остальных трех. Когда анимация запустится, последнее изображение будет увеличено. Последний кадр спрайта будет выглядеть больше остальных. Не подскажете, как мне это исправить?

Большое спасибо.

Джейк


person Jake Lin    schedule 11.01.2014    source источник


Ответы (1)


Используйте animateWithTextures:timePerFrame:resize:restore: и установите для изменения размера значение YES.

person LearnCocos2D    schedule 11.01.2014
comment
можем ли мы применить свойство масштаба спрайта к animateWithTexture: или существует какой-либо другой метод, который выполняет работу анимации с определенным соотношением? - person umer sufyan; 18.07.2014
comment
Я собирался задать вопрос об уменьшении масштаба моей анимации, и это решило проблему, и я очень благодарен за это. Ваше здоровье! - person HelloimDarius; 26.01.2019