OS X Mavericks preview: Sprite Kit simplifies 2D game development
New technology coming to OS X Mavericks promises to make it easier for indie gamers to support the platform with 2D arcade-style games. What's more, it's portable between Mavericks and iOS 7. Sprite Kit promises to reinvent the way 2D games are made for the Mac.
Sure, 3D games are cool, but there's been a strong push over the past few years to produce killer games with "old school" appeal - games that reference the 2D platformers, puzzlers and action games of old. After all, many gamers these days grew up in the shadow of Nintendo consoles - heck, some of us old farts even had Ataris, back in the day - and feel really comfortable playing those types of games.
Apple is answering the call by rolling its own frameworks for 2D game development, which it calls Sprite Kit. "Sprites" in 2D game development parlance are the animated characters you see in a computer game - the character you control, the bad guys, the bullets and missiles, and all the other elements of a scene in a game that's overlaid on top of the background.
But Sprite Kit controls a lot more than just characters in games. It's a complete engine for managing things like in-game physics. It also provides a particle system that helps developers produce more realistic effects like fire, smoke and explosions. That can save developers a lot of time from having to learn how to do these things using low-level technology like OpenGL, the graphics open standard that OS X supports.
Here's what Apple says on its public web page for Mavericks developers:
Create high-performing 2D games with the powerful new Sprite Kit framework, which allows you to control sprite attributes such as position, size, rotation, gravity, and mass. Sprite Kit’s OpenGL-based renderer efficiently animates 2D scenes.
Why Sprite Kit is a good idea
There are plenty of "middleware" offerings from software development companies who make money by licensing their technology to game developers who want to develop titles, but don't want to "roll their own" low level technology to handle things line in-game physics and animation. Some of those licenses are available at low cost, too, or in some cases, free, depending on how many copies of the game are sold.
But that technology is, by and large, not custom-designed specifically for OS X and iOS. Sprite Kit's different is that it's home-grown by Apple, so developers can expect better integration with Apple's Xcode development environment and better support at the core operating system level.
That's a net win for developers who begin to use the new technology, since maintaining compatibility with new operating system releases and changes to core Apple technology can be a real pain.
Sprite Kit won't have all the same features as more mature and robust game development engines will, at least not right off the bat. But it'll be enough for game developers to produce some compelling titles right away, and just like other core OS technology and development frameworks, Apple's certain to improve it over time.
Bridging the gap between iOS and OS X
In so many ways, Apple is trying to sensibly erase the line between using an iOS device and using a Mac - we see this in Mavericks technologies like iCloud Keychain, which just work regardless of which device you're using.
Sprite Kit exists very much in that realm - it's a technology that will be supported both by iOS 7 and Mavericks, to make it easier for developers to move in between those worlds, creating games that can run on any Apple-branded device, instead of limiting themselves to a single market.
Are you a Mavericks developer? Are you going to use Sprite Kit to create your games? Or do you prefer to use a third-party game engine technology? Let me know.