Simplest Way To Change Scene In Swift + Sprite Kit

user3808792 picture user3808792 · Jan 13, 2015 · Viewed 9.5k times · Source

I am just wondering what the simplest way to change scenes in Swift + Sprite Kit is?

Answer

Lazdo picture Lazdo · Jan 14, 2015

when changing between scenes, you're going to need to set up a transition, how the scene will change to the next and define which scene you want to transition to.

For the transition,

 var transition:SKTransition = SKTransition.fadeWithDuration(1)

The fadeWithDurationcan be replaced with any SKTransition a list of which can be found in the documentation https://developer.apple.com/library/prerelease/ios/documentation/SpriteKit/Reference/SKTransition_Ref/index.html

as for defining the scene,

var scene:SKScene = GameScene(size: self.size)

You're stating which scene you wish to transition to, in this case GameScene, but should be replaced with whichever scene you wish to transition to.

In order to start the transition, call:

self.view?.presentScene(scene, transition: transition)

Which will move to the scene scene which was set up in the line prior, using the transition transition which was also defined.