Game Engine API’s For Win8

XNA is a Zombie!

 You cannot, and will not be developing in Microsoft’s fully supported version of XNA in Windows 8. If you want to use an XNA-like API then you will need to look at some of the 3rd party frameworks that can help you. Those are:

If you want assistance choosing between  Slim DX and Sharp DX you can find that here


Other Game API’s

Unity is a game engine that supports a number of OS’s and platforms. Allows you to focus on making the in-game content and experience, as Unity has taken care of the portability, editor and deep graphics.  there has been an initiative to get XNA to run inside Unity called UnityXNA, however it has not been updated since it was put out on github. There was a wonderful “walk through” presented at //Build/ (talk 3-135). Unity is capable of generating a visual studio solution which is ready for the Windows 8 App Store.

Havok is a game engine which is designed to give game developers easy access to go from content to game. Some of the features were highlighted in the presentation at //Build/ (talk 3-046)

Stepping Up to C++

Abandoning XNA and going into C++ does have some added benefits over other 3rd Party Game Development Frameworks or API’s, namely controlling the engine allows you to be more responsive to changes in platform and features. If your looking to move into Win8 C++ and DirectX a great place to start is the DirectX Tool kit  ( DirectXTK), which was developed by Shawn Hargreaves who used to work on the XNA team. the DirectX Tool Kit has a lot of the same implementation as XNA but in C++.  When the developers of the game engine Unity went to port their code base from mono to WinRT, they were able to do this faster then porting to Flash. Which if you ask me is a fairly good endorsement to take the leap and go all in.

Consider the migration an opportunity to upgrade; take for example XNA 4, None of the feature levels in DirectX 11 directly maps to the XNA “Reach” or “HiDef” profiles. “Reach” is very similiar to Feature Level 9.1, and “HiDef” is designed for the Shader Model 3.0 capabilities of the Xbox 360 so it’s a bit more than Feature Level 9.3 offers but not as much as Feature Level 10.0, but if your going all in then you can get all of these benifits, plus everything available at FeatureLevel 11 (ref).

If you are headed down the C++ / DirectX route then I suggest you head over to the RandomChaos blog or GameDev-UK for more details there. You may also want to look around to find other useful links along the same lines as Smoothing the transition from XNA to DirectX math, which was used in DirectxTex a close relative of DirectXTK. There are a lot of Win8/WinRT game  samples out there, one that I find to be interesting, which is really more of a simulator than a game is disentanglement.. but that may be due to my math background.


This is a solver for Thinkfun’s Gordian’s Knot puzzle which runs on Windows and Windows Phone. It uses a Portable Class Library to share the solver code between the different platforms.

Channel 9’s Visual Studio Toolbox: Portable Class Libraries show covers an overview of Portable Class Libraries, how to use them, and a demo of this and several other apps.

When run, the program will start trying to solve the puzzle. While this is happening the “next” command will display the current solver state. When it is finished solving the background will change from black to blue, and the “next” command will advance through the steps in the solution to the puzzle it found.

{from github}





3-111 :  Justin Saint Clair : Gaming reimagined: Gaming case studies

3-046 : Sam George/Ross Odwyer : Windows Phone 8: Native C/C++ Game Development (Havok)


About Larry Louisiana

I'm a Microsoft Partner Consultant.
Aside | This entry was posted in Computers and Internet, Game Development, News and politics, Programming, Windows 8 and tagged , , , , , , , , , , , , . Bookmark the permalink.

One Response to Game Engine API’s For Win8

  1. Pingback: XNA in or out of Windows 8? | Ely Bob's space

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s