0

使用SKEmitterNodein SprikeKit,是否可以在粒子释放后更改粒子的速度/alpha?

我正在寻找的是一个发射粒子的粒子发射器,这些粒子是静态的,但在 x 秒后,它们开始移动。这可能吗?

4

1 回答 1

0

在看到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)

此代码将允许您随着时间的推移为发射器的属性设置动画。

于 2015-01-27T06:53:20.170 回答