这是我在iOS 8中用来让粒子出现的代码:
func onCollision() {
let explosion = SKEmitterNode(fileNamed: "rocketExplosion")
explosion.position = rocket.position
explosion.zPosition = 100
addChild(explosion)
}在iOS 8上运行得很好,但在iOS 9上就不行了。我读到测试版中的粒子发射器有问题,它们在GM版本中还是一样的吗?此外,在"Swift 2“教程之后,我尝试了一下,但没有成功:
if let explosion = SKEmitterNode(fileNamed: "rocketExplosion") {
explosion.position = rocket.position
explosion.zPosition = 100
addChild(explosion) }发布于 2015-09-23 01:28:38
希望这能对你有所帮助
let explosionFile: String = NSBundle.mainBundle().pathForResource("rocketExplosion", ofType: "sks")!
let explosion = NSKeyedUnarchiver.unarchiveObjectWithFile(explosionFile) as! SKEmitterNode
explosion.position = rocket.position
explosion.zPosition = 100
self.addChild(explosion)发布于 2015-09-29 06:24:08
我在使用objective c时也遇到了类似的问题(所以这不是一个只有swift 2才有的问题)。我发现粒子效果是在我的背景后面渲染的。我试着将它们设置在不同的Z层上,但它们仍然不起作用。
在我使用iOS 9的经验中,如果你有一个背景图像,它必须至少设置为-1才能让粒子工作。它似乎只影响我的背景图像。它能够正确地将EmitterNodes渲染到我所有的其他精灵之上。
https://stackoverflow.com/questions/32723112
复制相似问题