Games for Windows and the DirectX SDK blog

Technical tips, tricks, and news about game development for Microsoft platforms including desktop, Xbox, and UWP


Project maintained by walbourn Hosted on GitHub Pages — Theme by mattgraham
Home | Posts by Tag | Posts by Month

Windows SDK for Windows 11

windowssdk

Chuck Walbourn -

The Windows SDK for Windows 11 (10.0.22000) is now available for download, and is offered as an optional component in Visual Studio 2019 16.11.4 and Visual Studio 2022 Preview. See Microsoft Docs for an overview of new OS features, as well as these posts on Windows Blogs and the Game Stack Blog.

DirectXMath: This Windows SDK includes version 3.16b (i.e. 3.16 with hot-fixes for ARM64 issues on clang/LLVM and GCC).

NuGet: The Windows SDK is also offered via NuGet.

D3DX12: There’s a new version of the D3DX12.H header available from GitHub. The primary change is the new CD3DX12FeatureSupport helper class.

Windows 11 version checking: The Windows 11 version is reported as “10.0” with a build number >= 22000. The Windows SDK (22000) VersionHelpers.h header is missing a IsWindows11OrGreater function. This will be fixed in a future Windows SDK, but in the meantime here’s some code:

#include "VersionHelpers.h"

VERSIONHELPERAPI
IsWindows11OrGreater()
{
    OSVERSIONINFOEXW osvi = { sizeof(osvi), 0, 0, 0, 0, {0}, 0, 0 };
    DWORDLONG const dwlConditionMask = VerSetConditionMask(
        VerSetConditionMask(
        VerSetConditionMask(
            0, VER_MAJORVERSION, VER_GREATER_EQUAL),
               VER_MINORVERSION, VER_GREATER_EQUAL),
               VER_BUILDNUMBER, VER_GREATER_EQUAL);

    osvi.dwMajorVersion = HIBYTE(_WIN32_WINNT_WIN10);
    osvi.dwMinorVersion = LOBYTE(_WIN32_WINNT_WIN10);
    osvi.dwBuildNumber = 22000;

    return VerifyVersionInfoW(&osvi, VER_MAJORVERSION | VER_MINORVERSION | VER_BUILDNUMBER, dwlConditionMask) != FALSE;
}

Be sure to read What’s in a version number? Also, remember VerifyVersionInfoW is subject to appcompat behavior unless you have the relevant supportedOS GUID in your EXE manifest as detailed in Manifest Madness.

DirectX 12: Windows 11 includes support for Direct3D Feature Level 12.2 a.k.a. DirectX 12 Ultimate when using the latest video hardware and drivers. This is also supported on Windows 10 (Version 1909, Build 18363) or later via the DirectX Agility SDK for titles that use it.

64-bit only: Windows 11 is only available as x64 native or ARM64. There is no 32-bit (x86) version of Windows 11. Windows 11 does continue to support running 32-bit (x86) executables.

Related: Windows 10 SDK RTM, Windows 10 SDK (November 2015), Windows 10 Anniversary Update SDK, Windows 10 Creators Update SDK, Windows 10 Fall Creators Update SDK, Windows 10 April 2018 Update SDK, Windows 10 October 2018 Update SDK, Windows 10 May 2019 Update SDK