使用SKEmitterNode
in SprikeKit
,是否可以在粒子释放后更改粒子的速度/alpha?
我正在寻找的是一个发射粒子的粒子发射器,这些粒子是静态的,但在 x 秒后,它们开始移动。这可能吗?
使用SKEmitterNode
in SprikeKit
,是否可以在粒子释放后更改粒子的速度/alpha?
我正在寻找的是一个发射粒子的粒子发射器,这些粒子是静态的,但在 x 秒后,它们开始移动。这可能吗?
在看到objective-c标签之前,我迅速写下了答案。希望没关系。
这是我的粒子文件,所以你可以自己尝试一下: 下载
let emitter = SKEmitterNode(fileNamed: "fire")
emitter.position = CGPoint(x: self.size.width/2, y: self.size.height/2)
let time = CGFloat(2)
emitter.runAction(SKAction.sequence([
SKAction.waitForDuration(3),
SKAction.customActionWithDuration(NSTimeInterval(time), actionBlock: {
_, t in
let timePercentage = t / time // percentage of elapsed time
let maxSpeed = CGFloat(200)
emitter.particleSpeed = timePercentage * maxSpeed
})
]))
self.addChild(emitter)
此代码将允许您随着时间的推移为发射器的属性设置动画。