Sprite Kit, GLKit, and Scene Kit: How Apple is shaping game development

Marco Tabini |
Nov. 14, 2013

Buried in the avalanche of publicity surrounding the release of iOS 7 was the introduction of a new framework, called Sprite Kit, designed to help developers more easily and efficiently build 2D games.

As you can imagine, engines come in all shapes and sizes. Some, like Unity and the Unreal Engine are commercial, and offer complete three-dimensional programming environments that game designers can easily port from platform to platform.

Others, like Sparrow and Cocos2D focus on building 2D games and are free and open-source, with minimal licensing requirements beyond an acknowledgment of their use in a game's credits.

Into the frayFrom Apple's perspective, both of these kinds of engine have severe shortcomings. The commercial products are often cross-platform and make it a little too easy for developers to build games that work across multiple operating systems.Given the choice, the folks from Cupertino would probably be happier if more titles were exclusive to iOS and OS X, instead of being available on competing platforms as well.

On the other hand, many open-source tools designed to work only with Apple technologies lag behind the advances introduced by newer hardware, and their haphazard growth sometimes results in confusing programming interfaces. This is particularly important because open-source engines tend to be used by the small independent developers who have been responsible for many of the best original games to hit the market in the past few years.

For these reasons, Apple has quietly begun introducing a series of frameworks that make developing games for its products easier. For example, iOS 5 included a framework called GLKit that simplifies interfacing with OpenGL. Starting with Lion, OS X began offering Scene Kit, which simplifies the process of rendering complex three-dimensional scenes. And with iOS 7—and Mavericks—comes Sprite Kit, which contains everything developers need to write a 2D game from scratch, without having to worry about OpenGL.

The gaming long tail Obviously, these officially supported technologies play into Apple's strategy of locking developers in to developing for its operating systems: You can easily port a Sprite Kit app from OS X to iOS, but you can't reuse much of its code for an Android version.

But more is at play here. Great games aren't just about the raw ability to push pixels to a screen—they are about user experience. Technologies that simplify access to the advanced graphics that power today's iOS devices enable developers to work more efficiently and to focus on things like gameplay and artificial intelligence, which arguably affect the quality of video games much more than how many triangles you can display per second.

In a broader sense, frameworks like Sprite Kit are part of the same strategy that pushed Apple to create Game Center: Work hard to keep developers close to the company's platforms while offering them better tools to build their software, and you'll be rewarded with a rich ecosystem of high-quality games that are inexpensive to end users.

If history is any indication, we'll see Apple take more and more steps in this direction in the future—which can only mean that the games we'll be enjoying at the end of the process will continue to get better and better.