如何在iOS7的SpriteKit中为不同大小的图像添加动画?

4

我正在使用以下代码来对我的精灵节点进行动画。

        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

最后一张图片的尺寸与其他三张不同。当动画运行时,最后一张图像将放大。精灵的最后一帧看起来比其他帧要大。请问如何解决这个问题?

非常感谢。

Jake

1个回答

7
使用animateWithTextures:timePerFrame:resize:restore:方法,将resize参数设置为YES。

1
我们能否在animateWithTexture:方法中应用sprite的scale属性,或者存在其他方法可以使用特定比例进行动画处理? - umer sufyan
我本来想问一个关于我的动画被缩小的问题,但这个解决方案解决了我的问题,我非常感激。干杯! - HelloimDarius

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接