Swift version: 5.2
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)
SPONSORED Announcing NSSpain 2020: Remote Edition! An online, continuous conference for iOS developers. We’ll start on Thursday and finish on Friday, with talks, activities, and lots of fun for 36 hours, non-stop. Sound good? Join us!
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.
Link copied to your pasteboard.