Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

like image 482
Jake Lin Avatar asked Mar 22 '23 00:03

Jake Lin


1 Answers

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

like image 54
LearnCocos2D Avatar answered Apr 08 '23 06:04

LearnCocos2D