gpt4 book ai didi

swift - SpriteKit 粒子发射器多图像

转载 作者:行者123 更新时间:2023-12-03 09:16:25 27 4
gpt4 key购买 nike

我正在尝试将 SKSprite Particle Emitter 与 Swift 一起使用。

但我想在我的发射器中使用许多不同的纹理。

是否有可能:拥有许多图像,并且让发射器随机使用图像,而不是仅使用一张图像?

谢谢

最佳答案

假设您用一个纹理设计了发射器并将其保存为“original.sks”,并且您有一个包含纹理的数组 textures :

var emitters:[SKEmitterNode] = []
for t in textures {
let emitter = SKEmitterNode(fileNamed: "original.sks")!
emitter.particleTexture = t
emitter.numParticlesToEmit /= CGFloat(emitters.count)
emitter.particleBirthRate /= CGFloat(emitters.count)
emitters.append(emitter)
}
现在你有一个发射器阵列而不是一个发射器。无论你用发射器做什么,只要用数组来做:
// What you'd do with a single emitter:
addChild(someNormalEmitter)
someNormalEmitter.run(someAction)
...


// How to do the same with the array:
emitters.forEach {
self.addChild($0)
$0.run(someAction)
...
}
当然,你也可以子类 SKEmitterNode以便它包含其他 SKEmitterNode children 并将所有常用的发射器方法、 Action 和属性传播给 child ……取决于您的需要。

关于swift - SpriteKit 粒子发射器多图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35769213/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com