


Instead, I recommend using the replacements for D3DX listed above such as the DirectX Tool Kit for DX11 and DirectXMath. You can use the legacy DirectX SDK with the Windows 8.x SDK or Windows 10 SDK, but it's tricky due to the inverted include/lib path order. Old tutorials and books for Direct3D 11 use the D3DX11 utility library and xnamath or D3DXmath. This avoids any requirement to use the legacy DirectX SDK for audio. The best option is to use XAudio2Redist which provides XAudio 2.9 on Windows 7 SP1, Windows 8.0, and Windows 8.1 while using the built-in OS version on Windows 10. XAudio 2.8 is included with Windows 8 and Windows 10 and the headers are in the Windows 8.x SDK. You are wanting to use XAudio on Windows 7 which requires XAudio 2.7, which is only available in the legacy DirectX SDK. While the basic Direct3D 9 header has been in the Windows SDK for many years, there's really no Direct3D 9 utility code anywhere except in the legacy DirectX SDK in the D3DX library. With VS 2012-2017 the Windows XP toolset includes the Windows 7.1A SDK (see this post). This requires the Windows 7.1 SDK because the Windows 8.x SDK and Windows 10 SDK do not support Windows XP and this predates the merge of DirectX. For a complete survey of what ended up where, see these blog posts:Īt this point in time, there are only really two usesone use for the legacy DirectX SDK as covered in The Zombie DirectX SDK: With the transition to the Windows SDK, some stuff was 'left behind' and I've moved a lot of that stuff to various GitHub projects.

More detail is covered in this blog post: Where is the DirectX SDK (2021 Edition)?. The official status of the legacy DirectX SDK is addressed on Microsoft Docs. Visual Studio 2017 and later come with Windows 10 SDK which supports both DirectX 11 & DirectX 12 development. With VS 2015, you can optionally install the Windows 10 SDK which is needed to develop for DirectX 12. If you have Visual Studio 2012, 2013, or 2015 then you already have the Windows 8.x SDK which supports development for DirectX 11. As the person who did the work to merge the DirectX SDK into the Windows SDK, I've addressed this question many times here and elsewhere.
