使用Spritekit的简单Gif动画

我真的找不到一个简单的解决方案,我看到的每个示例都只显示了非常复杂的解决方案,但是我想要的只是2-3张循环显示的图像,因此看起来好像是动画的。与Gif动画效果相同。现在我有这个来创建图像

MonsterNode = SKSpriteNode(imageNamed: "MonsterNode_GameScene")

但是如何将MonsterNode变量设置为此类动画?我确实在寻找实现这一目标所需的最少代码。

回答:

主要思想是animateWithTextures用于此任务。您需要设置精灵需要进行动画处理的所有帧以及每个帧的显示时间。然后使用repeatActionForever运行动画循环。

// Add 3 frames

let f0 = SKTexture.init(imageNamed: "MonsterNode_GameScene_0")

let f1 = SKTexture.init(imageNamed: "MonsterNode_GameScene_1")

let f2 = SKTexture.init(imageNamed: "MonsterNode_GameScene_2")

let frames: [SKTexture] = [f0, f1, f2]

// Load the first frame as initialization

monsterNode = SKSpriteNode(imageNamed: "MonsterNode_GameScene_0")

monsterNode.position = CGPoint(x: CGRectGetMidX(self.frame), y: CGRectGetMidY(self.frame))

// Change the frame per 0.2 sec

let animation = SKAction.animateWithTextures(frames, timePerFrame: 0.2)

monsterNode.runAction(SKAction.repeatActionForever(animation))

self.addChild(monsterNode)

以上是 使用Spritekit的简单Gif动画 的全部内容, 来源链接: utcz.com/qa/414061.html

回到顶部