Jake Lin
Jake Lin

Reputation: 11514

How to animate different size of images in iOS7 SpriteKit?

I am using the flowing code to animate my sprite node.

        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]; 

The animation works alright except one image looks bigger and blur. I have 4 images which have size as below:

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

The last one's size is different from the other three. When the animation runs, the last image will scale up. The last frame of the sprite will looks bigger than the others. Would you please advise how can I fix that?

Thanks a lot.

Jake

Upvotes: 4

Views: 721

Answers (1)

CodeSmile
CodeSmile

Reputation: 64477

Use animateWithTextures:timePerFrame:resize:restore: and set resize to YES.

Upvotes: 7

Related Questions