Swift version: 5.10
You can change between SpriteKit scenes by calling the presentScene()
method on your SKView
. This can be called either just with a new scene, or with a new scene and a transition animation to use, depending on the effect you want. Here's an example with a transition:
let scene = NewGameScene(fileNamed: "NewGameScene")!
let transition = SKTransition.moveIn(with: .right, duration: 1)
self.view?.presentScene(scene, transition: transition)
There are several beautiful transition types you can try, with the SKTransition.doorway(withDuration: 1)
transition looking particularly neat.
SPONSORED Alex is the iOS & Mac developer’s ultimate AI assistant. It integrates with Xcode, offering a best-in-class Swift coding agent. Generate modern SwiftUI from images. Fast-apply suggestions from Claude 3.5 Sonnet, o3-mini, and DeepSeek R1. Autofix Swift 6 errors and warnings. And so much more. Start your 7-day free trial today!
Sponsor Hacking with Swift and reach the world's largest Swift community!
Available from iOS 7.0 – see Hacking with Swift tutorial 29
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.