2014-02-18 9 views
13

Ist es möglich, die Farbe eines Partikels nach dem Erstellen im Spritekit-Editor zu ändern? Ich habe versucht, SetParticleColor, aber es scheint nichts zu tun. Grundsätzlich möchte ich eine Partikel-Datei und eine Möglichkeit haben, die Farbe im laufenden Betrieb programmgesteuert zu ändern ...Ändern der Spritekit-Partikelfarbe

Antwort

34

Die Eigenschaft particleColor funktioniert nicht wegen der Farbrampeneinstellungen im Partikel-Editor. Diese werden tatsächlich in der particleColorSequence gespeichert, die alle anderen Partikelfarbeigenschaften ignoriert.

Also, um es funktionieren zu lassen, müssen Sie die particleColorSequence Setter überschreiben und machen es Null zuerst. Dann müssen Sie particleColorBlendFactor einstellen, um die gewählte Farbe vollständig mit der Partikeltextur zu mischen (vollständige Mischung ist 1.0). Von nun an sollte jede explizite Partikelfarbeinstellung funktionieren:

emitter.particleColorSequence = nil; 
emitter.particleColorBlendFactor = 1.0; 
emitter.particleColor = [SKColor redColor]; 
+0

Danke funktioniert super! – Negora

+0

@Negora Bitte markieren Sie die Antwort als akzeptiert, wenn es Ihr Problem gelöst hat. Vielen Dank – Batalia