The Easy Way to Write Windows 8 Games

One of my goals in my new position on the Windows 8 Developer Documentation team is to help encourage the vast number of App Developers out there to take a look at Windows 8 (if they haven’t already). As an app developer myself, it was a little surprising to see how much Microsoft have changed their approach to embrace the ‘app culture’. There’s now an official Microsoft app store for example, which you can use to distribute your games and apps to everyone running Windows 8 on desktop, laptops or even tablets.

Let’s pretend you are at least a little curious about writing new apps, or even porting existing ones to Windows. Are you worried about learning a brand new programming language?

Don’t be: one way to lessen the learning curve of a new platform is to use some kind of existing framework or middleware. Sure, you’re more than welcome to jump straight into Windows development using C# or C++ and cramming DirectX into your brain. And yes, all that knowledge you have of Objective-C or Java isn’t going to go to waste; but I’ve been making a list of interesting alternative solutions, and I’d certainly welcome your feedback.

At the moment, I’m looking at the various approaches to writing what are sometimes called “casual games”, rather than a hardcore 3D first person shooters, or an app to access a boring business database. Here’s my growing list.

 

Cocos2D-x.org

The Cocos3D framework first came to prominence on iOS, and it’s recently been updated to support Windows 8. Write apps using C++, without having to learn DirectX? Sounds good to me.

 

Impactjs.com

I’ve been messing around writing Windows 8 apps using HTML5 and JavaScript, and so far I’m enjoying this approach very much. The flexibility of the Canvas control, and the addition of the Windows-specific JS library controls makes for some great apps.

If you are focusing on games, the third-party framework ImpactJS might be of interest, as it includes plenty of game-specific features and even a level editor for those retro-platformers you have been itching to build.

 

MadeWithMarmalade.com

Marmalade is an interesting SDK, supporting C++, HTML5 and Lua. So far only Windows Phone 8 support has been released, but Windows 8 support is promised soon. Marmalade supports 2D and 3D graphics.

 

PhoneGap.com

PhoneGap is an HTML/CSS/JavaScript framework for writing apps. It was bought by Adobe, and supports many different devices. It might be less "gamey" than other approaches.

  

GameSalad.com

GameSalad likes Windows 8 too, and is a non-coding option for creating games using good old dragging-and-dropping.

 

MonoGame.net

Let’s say that you do know and love C# already. Wouldn’t it be cool to write apps for Windows 8 using C#? And maybe get back to something like the XNA we knew from not so long ago? MonoGame brings C# to many different platforms, and could be a good solution for Windows 8 game authors looking to keep using their existing programming skills.

 

 

Which frameworks have I missed? Which do you like best, and why?

 

UPDATE

 

Thanks to John G., I can update this list with a few more entries.

 

Titanium Studio

A PhoneGap-type cross platform HTML5 based solution.

 

GameMaker

A script-based game creation tool.

 

NME

Another script-based game creation tool, this one should be familiar to Flash developers.