About this project
DirectX Tool Kit for DirectX 11 is a Microsoft-maintained collection of C++ helper classes for writing Direct3D 11 code. It targets Win32 desktop applications on Windows 8.1 or later, Xbox One, and Universal Windows Platform apps for Windows 10 and Windows 11. The code is designed to build with Visual Studio 2022 or 2026, clang for Windows v12 or later, or MinGW, and requires the Windows 11 SDK (22000) or later for Visual Studio. It is intended to work without content from the legacy DirectX SDK.
The public headers in Inc\ cover a range of common graphics and input tasks: Audio.h for a low-level XAudio2-based audio API; BufferHelpers.h for creating D3D resources from CPU data; CommonStates.h for commonly used D3D state objects; DDSTextureLoader.h and WICTextureLoader.h for texture loading; Effects.h and PostProcess.h for built-in shaders; GamePad.h, Keyboard.h, and Mouse.h for input; GeometricPrimitive.h for basic shapes; GraphicsMemory.h for dynamic graphics memory allocation; Model.h for meshes loaded from .CMO, .SDKMESH, or .VBO files; PrimitiveBatch.h for user primitives; ScreenGrab.h for screenshots; SimpleMath.h as a wrapper for DirectXMath; SpriteBatch.h and SpriteFont.h for 2D rendering and bitmap text; and VertexTypes.h for common vertex formats. XboxDDSTextureLoader.h provides an Xbox One exclusive variant.
Source files live in Src\ and Audio\, while MakeSpriteFont and XWBTool are command-line tools for generating SpriteFont binary resources and XACT-style wave banks. A build\ directory holds miscellaneous build files and scripts, and a skills\ directory contains published CoPilot skills. Documentation is available on the GitHub wiki, and CoPilot CLI assistance can be installed via winget and gh skill commands.
The project is MIT licensed. Release notes describe several notable changes: the directxtk_desktop_win10 and directxtk_uwp NuGet packages are deprecated in favor of vcpkg; CMake projects require 3.21 or later; Direct3D Hardware Feature Level 9.x support was retired starting with the July 2026 release, with shaders built using Shader Model 4 requiring D3D_FEATURE_LEVEL_10_0 or greater; Windows 7 and Windows 8.0 support was retired starting with the March 2025 release; and various API changes over time, including typed enum bitmask flags, inline namespaces for DX11 versus DX12 types, and changes to DDSTextureLoader flags and DGSLEffect skinning. The Mouse class relative movement behavior was updated in February 2023 to accumulate deltas between GetState calls, with EndOfInputFrame available for explicit resets.
Support is offered through Stack Overflow with the directxtk tag and the DirectX Discord Server, while bug reports and feature requests go to GitHub issues. Contributions require a Contributor License Agreement, and tests for new features should be submitted to the separate Test Suite repository. The project follows the Microsoft Open Source Code of Conduct and includes trademark guidance. Credits list Shawn Hargreaves and Chuck Walbourn as primary authors, with contributions from several others for file formats, shaders, tools, and code reviews.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.