Wie erstelle ich einen Farbverlauf in Spritekit?

8

Gibt es eine Möglichkeit, in SpriteKit eine mit Farbverlauf gefüllte Box zu erstellen? Ich habe versucht, einen Form-Knoten damit zu füllen, aber es merkt, dass nur Vollfarben mit skshapenode arbeiten.

    
AwDogsGo2Heaven 08.10.2013, 18:00
quelle

4 Antworten

4

Ich denke nicht, dass dies mit der aktuellen SKShapeNode möglich ist, die momentan kaum ihre grundlegenden Funktionen behandelt. Ein guter Ansatz, wenn Sie keine bereits vorhandenen Sprite-Farbverlaufsbilder verwenden möchten, wäre das Erstellen eines SKTexture durch Anwenden eines CIFilter (wie vielleicht CILinearGradient in diesem Fall) auf ein einfaches Box-Bild und dann das Erstellen das SKSpriteNode von diesem SKTexture .

    
Matt 08.10.2013, 18:11
quelle
6

Hier ist eine Lösung. (Hinweis: Ich verwende Rubymotion, eine Ruby-Bindung für Objective C / iOS, aber die Logik ist genau die gleiche. Wenn jemand dies bearbeiten und das Ziel c gleichwertig setzen will, dann mach weiter

%Vor%     
AwDogsGo2Heaven 13.10.2013 06:23
quelle
4

OK, hier verwende ich jetzt etwas. Ich habe es auf AwDogsGo2Heaven's Lösung, jedoch für Mac angepasst. Wäre süß mit einer voll kompatiblen Lösung. Ich bin weit davon entfernt, Kontexte zu erstellen. Aber scheint zu funktionieren. Auch ich bin unsicher über die Skala. Laufen auf Retina Mac und nicht Retina Mac und kann keine Probleme sehen, aber der Kontext wird mit Skala 2 erstellt, so könnte für nicht Retina macs Overkill sein. Ich habe dies in eine Kategorie auf SKTexture gestellt.

Um es zu verwenden, rufen Sie einfach +(SKTexture*)gradientWithSize:(const CGSize)SIZE colors:(NSArray*)colors .

auf

Bearbeiten: Aktualisierter Code und weitere Diskussionen hier: Gradient Textur hat falsche Skala auf Retina Mac

    
Jonny 21.10.2013 08:44
quelle
0

Matts Antwort ist korrekt, aber ich konnte noch keinen Gradienten hinzufügen. Dies ist mein aktueller Versuch, wenn jemand weiß, wie es funktioniert, bitte update für thread.

Hier ist der Core Image Ref

%Vor%

Eine weitere gute Möglichkeit, Ihre Filter zu testen, ist die Demo-App CIFunHouse von der WWDC 2013 herunterzuladen.

    
DogCoffee 08.10.2013 21:12
quelle

Tags und Links