2017-08-29 3 views
0

Ich möchte, dass mein Raumschiff eine Partikelspur hat, die ihm folgt. Wie würde ich das tun?Spritekit Hinzufügen von Partikeln

Hier ist mein Code für mein Raumschiff:

override func didMove(to view: SKView) { 
    spaceS.position = CGPoint(x: self.frame.width/2, y: self.frame.height/2) 
    spaceS.setScale(0.05) 
    spaceS.zPosition = 1 

    addChild(spaceS) 

} 
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { 

     for touch in touches { 
      let location = touch.location(in: self) 
      spaceS.position = CGPoint(x: location.x, y: location.y) 
     } 


} 
override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) { 
       for touch in touches { 
      let location = touch.location(in: self) 
      spaceS.position = CGPoint(x: location.x, y: location.y) 
     } 


} 

EDIT 1: Ein Feuer Partikel Spur genauer

Antwort

1

Zuerst werden Sie eine SpriteKit Particle File durch Drücken Befehl erstellen müssen + n auf Tastatur und aus der Vorlage unter iOS ->Resources -> wählen Sie SpriteKit Particle File klicken Sie Next und wählen Sie particle template bis fire drücken Sie nex t und geben Sie einen Namen SpriteKit Particle File Dies wird eine yourFileName.sks Datei zu Ihrem Projekt erstellen.

den Code unten verwenden:

override func didMove(to view: SKView) { 

    spaceS = SKSpriteNode(imageNamed: "Spaceship") 
    spaceS.position = CGPoint(x: self.frame.width/2, y: self.frame.height/2) 
    spaceS.setScale(0.50) 
    spaceS.zPosition = 1 

    addChild(spaceS) 

    let emitter = SKEmitterNode(fileNamed: "MyParticle") //MyParticle is the name of the sks file. 
    emitter?.position = CGPoint(x: 0, y: -spaceS.size.height) 
    emitter?.zPosition = 1 
    spaceS.addChild(emitter!) //Now the emitter is the child of your Spaceship.  
} 

Ausgang:

enter image description here

+0

Wenn das Sprit zu klein ist das Feuer nicht erscheint, und es ist auch in der Mitte der erscheinen Sprite –

+0

Ich werde meinen letzten Kommentar besser erklären. Wenn das Partikel auf einen kleineren Maßstab eingestellt ist, erscheint es in der Mitte des Sprites (Es verschwindet nicht) –

+0

Vielleicht ist Ihr Sprite viel kleiner. Versuchen Sie die Größe Ihres Partikels. Wenn meine Antwort half, das Problem zu lösen, sollten Sie die Antwort oder das Hochladen akzeptieren. – Joe

Verwandte Themen