Swift:Animate SKEmitterNode

时间:2016-04-01 08:12:59

标签: swift animation skemitternode

我正在尝试使用SKEmitterNode创建爆炸效果,我按照本教程的一些内容(http://www.waveworks.de/kill-your-characters-animating-explosions-with-skanimations-in-sprite-kit/),但它似乎没有效果。这就是我所拥有的:

var superDabParticle = SKEmitterNode(fileNamed: "superDabParticle.sks")

func setUpEmiterNode(){
    superDabParticle?.position = CGPoint(x: self.size.width * 0.5, y: self.size.height * 0.5)
    let superDabParticleEffectNode = SKEffectNode()
    superDabParticle?.zPosition = 1
    superDabParticle?.setScale(0)
    superDabParticleEffectNode.addChild(superDabParticle!)
    self.addChild(superDabParticleEffectNode)
}

func animateEmiterNode(){
    let birth = SKAction.runBlock { self.superDabParticle?.particleBirthRate = 0 }

    superDabParticle!.runAction(SKAction.sequence([SKAction.waitForDuration(0.1), SKAction.scaleBy(1.5, duration: 0.1), birth]))
}

所以我需要在应用首次启动时调用setUpEmiterNode(),然后当用户点击按钮时,调用animateEmiterNode让粒子从屏幕底部飞起至约75%屏幕,然后倒下;在水效应下发生爆炸。我正在使用SPARK发射器效果。如果您知道我的问题或有任何其他更好的方法,请协助!!

0 个答案:

没有答案