For the most high-fidelity and rich experiences in 3D games, you’ll want to use the Windows 8 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 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 behaviour that could compromise the smooth performance of your game.
DirectX is easier with Windows 8 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.