Swift version: 5.1
One powerful and under-used feature of SpriteKit is its ability to recolor
SKSpriteNodes dynamically. This has almost zero performance impact, which makes it perfect for having multiple-colored enemies or players. It can also be animated, meaning that you could for example make your player flash white briefly when they've been hit by an enemy.
To tint a sprite cyan, use this code:
firework.color = UIColor.cyan firework.colorBlendFactor = 1
If you want to animate the sprite coloring, you'd use this:
let action = SKAction.colorize(with: UIColor.red, colorBlendFactor: 1, duration: 1)
LEARN SWIFTUI FOR FREE I have a massive, free SwiftUI video collection on YouTube teaching you how to build complete apps with SwiftUI – check it out!
Available from iOS 7.0 – see Hacking with Swift tutorial 20
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.