Developing games
[ This article is for Windows 8.x and Windows Phone 8.x developers writing Windows Runtime apps. If you’re developing for Windows 10, see the latest documentation ]
Windows 8.1 offers new opportunities to create, distribute, and monetize games. Learn about porting your game and preparing a game for the Windows Store.
Start developing your Windows Store game
- Prepare your Windows Store DirectX game programming environment
- Add Windows Store features for DirectX 11.1 games
- Prepare your Windows game for publishing
- Port from DirectX 9 to Windows Store
- Port from OpenGL ES 2.0 to Direct3D 11.1
- DirectX game development and sample walkthroughs
- Additional game programming resources
Choose DirectX and C++ for your Windows Store games
For the most high-fidelity and rich experiences in 3D games, you’ll want to use the Windows 8.1 DirectX APIs. This is the easiest version of DirectX to develop with. It supports a wide range of graphics feature levels, from DirectX 9.1 to all the latest hardware features exposed in DirectX 11.1. It allows you to tailor your game to every PC, from power-efficient ARM-based portable Windows 8.1 tablets, to over-clocked multi-GPU gamer rigs.
With C++, you have a direct line to the GPU, CPU and low-level services of the Windows 8 platform. You can write high-performance code. With the new C++/CX language extensions, the syntax approaches the simplicity of C#. You get transparent object management via reference counting, and yet there’s no runtime layer, garbage collection or just-in-time compilation behavior that could compromise the smooth performance of your game.
DirectX is easier with Windows 8.1 because graphics stack is better integrated. This makes Direct2D, Direct3D, DirectVideo and DirectCompute components easier to use together and requiring fewer duplicated resources than before. There is built-in support for the Xbox controllers with the XInput library. To learn more, see Working with input and controls in your DirectX game. The improved APIs for audio and sound mixing with XAudio2 are covered in the Working with audio in your DirectX game section, and simplified math functions and types are covered in the DirectXMath Programming Guide.
Why create a game for the Windows Store?
Perhaps you are a game developer coming from a different platform, or you have previously developed a game on an earlier version of DirectX on Windows. You want to explore whether developing your game for the Windows Store is an attractive proposition for you. Here are some reasons to invest in the Windows Store:
- Reuse your code and leverage your game development experience: One of the greatest advantages of the DirectX/C++ development approach is that you can reuse significant amounts of your Windows Desktop game code to create a Windows Store game, a Windows Phone game. Use this porting guidance to leverage your existing code and game idea:
- Great development tools: Great games are made with great tools. Visual Studio 2013 provides a sophisticated environment for game development, debugging and profiling that eases your entry into game development, such as the Graphics Diagnostics tools. Prepare your Windows Store DirectX game programming environment, and download the GDC 2013 game templates to start creating game projects.
- New horizons for your game: Windows 8.1 has changed the PC landscape with innovative form factors, new chip architectures, and exciting commerce models that present new opportunities.
- Rich entertainment experiences: Windows 8.1 is designed and engineered specifically for the enjoyment of entertainment experiences. The Windows 8.1 User Experience (UX) guidelines promote full screen imagery, as well as fast and fluid interactions with no borders. It is more convenient than ever to support touch, pen (ink) and mouse with the same code so you don’t have to design special mechanics for different form factors.
- Broad range of devices: To enable the highest possible performance, C++ with DirectX is the language of choice for Windows 8.1 apps. Since performance is linked to device efficiency, C++ provides a route to the lowest possible power consumption rate, thereby enabling your game to run on the broadest range of devices.
GDC 2013 game dev session videos
- Developing a Second Screen Experience with Xbox SmartGlass – Rosa Thomas
- Secrets of Success for Publishing Games in the Windows Store – Shai Hinitz
- Core Technologies for Windows 8 Games – Chas Boyd
- Developing a Windows Store Game with DirectX and C++ - Phillip Napieralski
- Crossing Microsoft Screens: Building Cross Platform Gameplay in Skulls of the Shogun –Borut Pfeifer
- Building Connected Game Experiences On Windows Phone – Tim Laverty
- Building DirectX Games for Windows and Windows Phone - Joao Raza
- Expand Your Opportunities to Windows 8 and Windows Phone 8 with Cross Platform Engines and Libraries – JC Cimetiere & Tim Closs
- Using In-Application Purchase for Windows Phone Games – Joe Bourne
- Basic Game Building for Windows Phone – Mark Paley
//build/ 2013 games and graphics dev session videos
- What's New in Direct3D 11.2
- Innovations in High Performance 2D Graphics with DirectX
- DirectX Graphics Debugging Tools
- Windows Phone Game Development Basics
- Cutting Edge Games on Windows Tablets
- Accelerating Windows Store Game Development with Middleware
- Bringing Desktop PC Games to the Windows Store
- From Android or iOS: Bringing Your OpenGL ES Game to the Windows Store
- Unlocking the Power of DirectX in Apps That Use XAML
- Massive Virtual Textures for Games: Direct3D Tiled Resources (advanced)
- Building Windows Second Screen Experiences Using Xbox SmartGlass
- Tales from the Trenches: Developing "The Harvest" and "Gunpowder" with Unity
- Bringing Halo: Spartan Assault to Windows Tablets and Mobile Devices