In short, SpriteKit provides complete rendering and infrastructure that covers all low-level processes within OpenGL and allows developers to focus on creating great gameplay and design.
The SpriteKit Life-Cycle.
Like many Cacoa libraries, SpriteKit has a built-in life cycle and processing loop. In SpriteKit, this loop allows you to create and stack individual frames such as tiles within a viewport that moves between them. The life cycle is as follows:
A window is created as a viewport and container for scenes in the game. Each window usually contains a specific section of the game. For example, you can have the game in one window, a score screen in another, and purchases in a third. To create a typical game windows, the application first creates an SKView object for the game, which can then be placed in a window. The SKView will then be able to receive scenes to render and animate the content. In many ways, SKView acts as a scene manager, letting scenes through and preparing the next scene while the current one is playing.
Typically at this stage, a controller uses the didMoveToView and update methods to assign and update things such as stored status, score, and other global data exchanged between scenes.
Create a scene.
Scenes are created as frames within the window. These frames can be positioned along a grid to create a scrollable and moving background between which objects move. These individual scenes are a collection of SKScene objects. These scenes have finite definitions and lifetime, making object creation in memory easier to calculate, animate, and manage.