Direct3D is a API for rendering 3D graphics. The current version to care about is DirectX 11 and DirectX 12. These pages is about DirectX11. Direct3D is part of DirectX and is available on Microsoft windows and Xbox platforms (Xbox, Xbox 360 and Xbox One).

The Basic

There are three objects in DirectX that are used frequently. They are Device, DeviceContext and SwapChain. The class of each depends on the the directx version. For the first two in DX11 they are prefaced with ID3D11 and the last one with IDXGI as it is part of the

Microsoft DirectX Graphics Infrastructure.

    • Device: Used to create GPU resources such shaders, textures, buffers and state objects.

    • DeviceContext: Used to configure the rendering pipeline and draw things.

    • SwapChain: Stores the buffers one is rendering to and show them to the screen when rendering is complete.


    • Startup - The basic steps to setup for DirectX 11 rendering.

    • Resources

    • Buffers

    • Textures

      • Update - How to update a resource after it has been created




DirectX 10 Performance - 2008

DirectX10: porting,performance and “gotchas” - 2012

Constant Buffers without Constant Pain - 2015