SKEmitterNode 出现问题 - 不显示在 sks 文件中创建的颜色
Trouble with SKEmitterNode - doesn't display colors created in sks file
我有下面的函数来显示发射器。它应该根据传递给函数的颜色选择哪个请求文件用于发射器。 sks 文件是根据它们的颜色创建和命名的,它们在 Xcode.
中显示正确的颜色
然而,当在模拟器或设备上 运行 时,sks 文件中的着色似乎没有被接受。无论传入什么颜色,发射器都会显示相同的粒子颜色。顺便说一句,这是一个基于火花的发射器。
知道我做错了什么吗?
func showEmitter(theColor:String){
var ourEmitterName:String?
switch(theColor) {
case "black","white":
ourEmitterName = "blackwhiteemitter"
default:
ourEmitterName = "\(theColor)emitter"
}
let emitterPath = NSBundle.mainBundle().pathForResource(ourEmitterName, ofType: "sks")
let thisEmitter:SKEmitterNode = NSKeyedUnarchiver.unarchiveObjectWithFile(emitterPath!) as SKEmitterNode
thisEmitter.zPosition = SceneLevel.background.rawValue
self.addChild(thisEmitter)
}
感谢您的帮助 - 肯
我发现了问题。在我的发射器中,我将混合模式设置为 'Add'。在我将其更改为 'Alpha' 之后,一切正常。
不确定为什么会解决它,因为我不知道 'added' 是什么。
我有下面的函数来显示发射器。它应该根据传递给函数的颜色选择哪个请求文件用于发射器。 sks 文件是根据它们的颜色创建和命名的,它们在 Xcode.
中显示正确的颜色然而,当在模拟器或设备上 运行 时,sks 文件中的着色似乎没有被接受。无论传入什么颜色,发射器都会显示相同的粒子颜色。顺便说一句,这是一个基于火花的发射器。
知道我做错了什么吗?
func showEmitter(theColor:String){
var ourEmitterName:String?
switch(theColor) {
case "black","white":
ourEmitterName = "blackwhiteemitter"
default:
ourEmitterName = "\(theColor)emitter"
}
let emitterPath = NSBundle.mainBundle().pathForResource(ourEmitterName, ofType: "sks")
let thisEmitter:SKEmitterNode = NSKeyedUnarchiver.unarchiveObjectWithFile(emitterPath!) as SKEmitterNode
thisEmitter.zPosition = SceneLevel.background.rawValue
self.addChild(thisEmitter)
}
感谢您的帮助 - 肯
我发现了问题。在我的发射器中,我将混合模式设置为 'Add'。在我将其更改为 'Alpha' 之后,一切正常。
不确定为什么会解决它,因为我不知道 'added' 是什么。