0
정말 간단합니다. 내 입자가 키 프레임 시퀀스를 사용하여 희미 해 지도록 노력하고 있습니다. 그러나 키 프레임 시퀀스를 사용하면 전혀 사라지지 않습니다. 내가 뭘 잘못하고 있는지 모르겠다.spritekit : 파티클 키 프레임 시퀀스 문제
입자 생성 :
static func debris(size: Int) -> Array<SKEmitterNode> {
if size > 5 {
fatalError("we don't have that much debris")
}
var debrisArr: [SKEmitterNode] = []
for i in 1...size {
let debris: SKEmitterNode = SKEmitterNode(fileNamed: "debris")
debris.particleTexture = SKTexture(imageNamed: "debris\(i)")
convertNumRef(&debris.particleScale)
convertNumRef(&debris.particleScaleRange)
debris.particleRotationSpeed = debris.particleRotationSpeed * CGFloat.randomSign()
// THE PART WE CARE ABOUT
debris.particleAlphaSequence = SKKeyframeSequence(keyframeValues: [0.5, 1.0, 0.0], times: [0.0, 3.0, 4.0])
debrisArr.append(debris)
}
입자가 너무 간단한 예제를 사용하여이 작업을 시도했습니다
func makeDebris(){
for debrisEmitter in self.debris {
debrisEmitter.resetSimulation()
debrisEmitter.position = self.position
self.gameScene.gameLayer.addChild(debrisEmitter)
debrisEmitter.runAction(SKAction.removeFromParentAfterDelay(10))
}
}
여기 장면을 게임에 추가.
화재는 기본 spritekit "화재"입자
let fire = SKEmitterNode(fileNamed: "MyParticle")
fire.particleColorSequence = SKKeyframeSequence(keyframeValues: [SKColor.blueColor(), SKColor.blueColor(), SKColor.yellowColor()], times: [0.0, 1.0, 2.0])
fire.position = CGPoint(x: self.size.width/2, y: self.size.height/2)
self.addChild(fire)
에미는 파란색 입자를 방출이다. 배열의 첫 번째 색상을 선택합니다. 나는 뭔가를 놓치고 있어야합니다.
고마워요. SpriteKit 문서는 많은 것을 남겨두고 있습니다. – Jonny