我正在尝试使用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
发射器效果。如果您知道我的问题或有任何其他更好的方法,请协助!!