Where is the DirectX SDK (2013 Edition)?


See also “Where is the DirectX SDK (2015 Edition)?

At BUILD 2013 last week, Microsoft released the Windows 8.1 Preview, Visual Studio 2013 Preview, and the Windows SDK for Windows 8.1 Preview (included in the VS 2013 Preview). Note that RTM was released on October 17th, 2013.

As with the Windows 8.0 SDK, the Windows 8.1 SDK is where you’ll find Direct3D 11.2, Direct2D 1.2, DXGI 1.3, DirectXMath 3.05, a new HLSL complier (#47), and some updates to WIC. We recommend using the Windows 8.x SDK instead of the DirectX SDK, or at a minimum using the Windows 8.x SDK primarily with only specific usages of the legacy DirectX SDK.

The 18.0 C++ compiler in the Visual Studio 2013 Preview includes support for a new __vectorcall x86 and x64 calling-convention, and DirectXMath 3.05 has been updated to take advantage of it. I refreshed the DirectXMath extensions series, XDSP, and SHmath to integrate smoothly with this new version. The 18.0 C++ compiler supports additional C++11, Standard Library/STL, and C99 library features as well. See the Visual C++ Team blog, Somasegar’s blog, and the Visual Studio blog. Remote Debugging Tools packages are also available.

You’ll find VS 2013 projects for DirectXTex, DirectXTK, and Effects 11 on their respective CodePlex/GitHub sites. There is a Windows Store app for Windows 8.1 version of DirectXTK Simple Sample available on MSDN Code Gallery.

The DirectX SDK (June 2010) is still available as the last release of the standalone DirectX SDK, but we strongly encourage developers to begin to transition to using the Windows SDK instead. Instructions for ‘mixing’ use of the new Windows SDK and older DirectX SDK content can be found here. Remember that for Windows Store app development, do not use the DirectX SDK.

VS 2010 Users: The standalone Windows 8.1 SDK does not integrate a new “platform toolset” option for Visual Studio 2010 to use the newer headers. See this post for more details.

Game Compatibility: For developers and publishers of Windows Desktop PC games, be sure to review the Desktop Games on Windows 8.x recommendations, the latest Windows and Windows Server compatibility cookbook, and pay particular attention to the new appcompat behavior of the GetVersion(Ex) API—which you aren’t using, right?

The key takeaway is if your game or launcher uses this API to collect user telemetry, be sure to add the compatibility manifest elements to your EXEs. Otherwise, get rid of any crusty OS version checks that still use this API.

Direct3D 11.2: Note that there is no D3D_FEATURE_LEVEL_11_2 hardware feature level defined as of yet. New hardware features exposed by DirectX 11.2 are optional.

Windows Family Safety / Parental Controls: Windows 8.1 supports the Russian Age Rating System–see the Windows 8.x and GDFs post as well as the updated GDFTrace utility. If you run GDFMaker from the Windows 8.x SDK on Windows 8.1, you’ll have the option of populating the new rating system. Note support for RARS is added to Windows 8.0 via KB 2838466.

_WIN32_WINNT: When building an application that is ‘down-level’ using headers in the Windows 8.1 SDK, be sure to explicitly select the correct ‘minimum’ _WIN32_WINNT value. VS 2013 Preview and the Windows 8.1 SDK default to 0x0603. For Windows 8 compatibility, use 0x0602; for Windows 7 use 0x0601; and for Windows Vista use 0x0600. Typically this is done as part of the project configuration via Preprocessor Definitions. See Using the Windows Headers for more information.

Developer Runtime: The Windows 8.1 SDK (also included with Visual Studio 2013) is where you obtain the latest Developer Runtime that is compatible with Windows 8.1.

Windows Store app developers: Be sure to review the Migration Guide and how to Retarget to Windows 8.1 Preview.

System requirements: Windows 8.1 will run on the majority of hardware that can run Windows 8. The 64-bit version does require CPU support for some additional instructions which are not present on early first-generation 64-bit processors. See the Windows 8.1 Preview FAQ for details.

Visual Studio 2013 can be installed on Windows 8.1, Windows 8, and Windows 7 Service Pack 1. For Windows 7 SP1, installing KB 2670838 is required as part of the setup.

DirectX SDK: If you want to make use of legacy DirectX SDK components such as D3DX9, D3DX10, D3DX11, or XAudio 2.7 with Visual Studio 2013, see MSDN for details on mixing the paths correctly.

DXUT: The version of DXUT11 in the DirectX SDK (June 2010) is heavily tied to D3DX which requires the legacy DirectX SDK. See DXUT for Win32 Desktop Update for a newer release.

FX:  The version of Effects 11 in the DirectX SDK (June 2010) needs the a few includes from the legacy DirectX SDK. See Effects for Direct3D 11 Update for a newer release.

D3DX: As noted on MDSN, all versions of D3DX are deprecated including D3DX11. See Living without D3DX.

Tools: Some of the developer tools are in the Windows 8.x SDK, others are not. See DirectX SDK Tools Catalog.

Samples: A number of samples from the DirectX SDK (June 2010) release have been updated and posted to MSDN Code Gallery. See DirectX SDK Samples Catalog.

Related: Where is the DirectX SDK?, DirectX SDKs of a certain age, Visual Studio 2013 Release Candidate, Visual Studio 2013 and Windows 8.1 SDK RTM are now available, The Zombie DirectX SDK

See also: Where is DXERR.LIB?, GDF Tools, XDSP.H, SH Math, BC6H/BC7Encoder

Comments (17)

  1. HLSL shader linking / Function linking graph (FLG) sounds pretty interesting, is there a place with more details about it (a code sample will largely do too! )

    And does "Inbox HLSL compiler" means we can now use D3DReflect in windows store apps? If yes that's pretty great news :)

  2. Ok I found sample (should do a proper search before to post comments 😉 , code.msdn.microsoft.com/…/HLSL-shader-compiler-sample-e5a1d002

    Looks like exactly what I'm looking for at the moment, can't wait to try, download for preview vs is way too slow ))

  3. walbourn says:

    The D3DCompile_47.DLL is now part of the Windows 8.1 OS and can be used by both Win32 desktop and Windows Store apps. The HLSL compilation and reflection functionality is now available to both Windows Store apps. You can still only use D3DCompileFromFile in development versions (i.e. use of it will fail the WACK tool), but you can use WinRT async file I/O and then call D3DCompile on the loaded HLSL shader data even for production use in Windows Store apps.

  4. That's really useful to have shader compilation/reflection available for windows store, opens nice possibilities for creative apps.

    From my first tests FLG is pretty amazing too!

    Only question I have about it is if it supports attributes? (like earlydepthstencil  on top of a Pixel Shader, in case of Vertex/Pixel shader it's not much of an issue, but attributes are needed in case of other shader types (GS, CS…).

    Great job !

  5. walbourn says:

    The current implementation of linking only supports Vertex and Pixel shaders.

  6. Teijigo Teatime says:

    Hi.

    Where is a win32 simple sample program ?

    I want the tutorial which draws a simple polygon.

    There was tutorial in DirectX SDK 2010-06(SamplesC++Direct3D11Tutorials).

    Thank you.

  7. walbourn says:

    The original Win32 tutorials are on MSDN Code Gallery as noted in the DirectX SDK Samples Catalog post.

  8. DannyRachow says:

    Wer hat Die alles Enttscheidende Lösung meines Problems quasi

    SonyVaioE Free Offer v.Hardware HDMI u.s.w und Sony Playstation 3 möchten syncron spielen wie Musizieren???

    Software Problem oder einfach nicht möglich!??

    DannyRachow@Gmail.com

    würde Mich sehr über Hilfe freuen

    mfg Danny

  9. Doug Rogers says:

    Where do I get the lastest DirectX headers and libraries for Windows 7?

    Thanks.

  10. walbourn says:

    The DirectX 11.1 headers for Windows 7 (and the associated Debug Runtime) are in the Windows 8.x SDK which comes with VS 2012 and VS 2013, and can be obtained standalone as well..

  11. TB says:

    dumb, doesnt even tell me where it is, change the title of this to what is the new directX SDK!

  12. walbourn says:

    @TB: The answer is "the new DirectX SDK is the Windows 8.1 SDK" which I do tell you the location of. The download link for the legacy DirectX SDK is on this blog post.

  13. Voice of reason says:

    Windows 8 was terrible, this is another attempt to strongarm people into using windows 8 and 10 that frankly suck worse than 7 for gaming.

  14. walbourn says:

    I'm not sure what your mini-rant has to do with the legacy DirectX SDK. The Windows 8.1 SDK supports development of Windows desktop applications for Windows Vista, Windows 7, Windows 8, Windows 8.1, and Server equivalents. The VS 2013 toolset supports development on Windows 7 and Windows 8.x. You can even target Windows XP with the VS 2013 toolset which I link to the issues from this post.

    Perhaps you should direct your comments to the Windows blog?

  15. atlake says:

    i think the comment from TB is referring to 'what is the default install path of the windows 8.1 SDK'? not the location of the URL for the SDK download.

  16. walbourn says:

    You can't change the install location of the Windows 8 SDK. I agree it's annoying.

  17. atlake says:

    i believe this is the answer to the question (on a win8.1 machine):

    C:Program Files (x86)Windows Kits10

    Here you will find include and lib directories.

    For example, the full path to d3d12.h on my machine:

    C:Program Files (x86)Windows Kits10Include10.0.10240.0um

    and d3d12.lib:

    C:Program Files (x86)Windows Kits10Lib10.0.10240.0umx86  (or the respective target x86 vs. x64 vs arm …)