Win10上的DirectX SDK在哪里可以找到?

4

我刚刚得知我正在使用的SDK(2010年6月)已经不再使用,我需要使用他们在Win10中包含的新版本。那么它在哪里?

我正在尝试启动一个图形演示解决方案,但由于链接器错误,我无法调用D3D11函数,这对我来说意味着我需要包含库等。

如果有人可以帮助我解决这个问题,让我能够继续进行下去,那就太好了。


我发现使用freeglut的OpenGL更加直观易学。 - Charlie
@Charlie 可能吧... 但是我一直在找的所有工作都需要DirectX经验... 我在学校里用过,但那是旧的SDK就像我说的... 我知道OpenGL也很重要,只是我真的想做DirectX。 - Bella Rose
字面上的谷歌搜索结果第一条: https://blogs.msdn.microsoft.com/chuckw/2015/08/05/where-is-the-directx-sdk-2015-edition/ - MrEricSir
但这并没有回答我的问题...我不介意使用Dx12或11,但我找不到任何地方告诉你任何库和包含文件在哪里,以便我可以实际编码和调用函数..... - Bella Rose
现在没有单独的SDK了,它已经在一段时间前集成到Windows SDK中。当您发布链接器错误消息时,您只能获得有关链接器错误的帮助。 - Hans Passant
显示剩余2条评论
1个回答

4
微软文档页面 DirectX SDK在哪里? 告诉你要使用Windows SDK,具体来说是Windows 8.0 SDK、Windows 8.1 SDK或Windows 10 SDK进行DirectX开发(假设是Direct3D 11或Direct2D/DirectWrite)。Direct3D 12需要Windows 10 SDK。
如果您正在使用Visual Studio 2013或更高版本,则已经拥有Windows 8.1 SDK并可选择安装Windows 10 SDK。
一个重要的细节是D3DX库(D3DX9、D3DX10和D3DX11)已被弃用,只能在传统的DirectX SDK中使用。这意味着D3DX11不是Windows SDK的一部分,您不应该使用它。

更新:对于旧项目,D3DX9、D3DX10和D3DX11库的传统DirectX SDK“终止生命周期”的2010年6月发布版提供了此NuGet包,需要与Windows 10 SDK结合使用。有关详细信息,请参见此博客文章

对于HLSL,您可以直接使用D3DCompile或Windows SDK自带的FXC。对于数学,您可以使用Windows SDK自带的DirectXMath。如果您正在使用传统的Effects 11,则可以使用GitHub上的版本。我建议您还要查看DirectX 11工具包及其教程。有关D3DX替代品的完整列表,请参见无需D3DX

如果您确实想继续在Visual Studio 2012或更高版本中使用传统的DirectX SDK组件,则可以,但是请注意上面MSDN页面底部的详细信息。特别是添加传统的DirectX SDK到项目时,必须反转include/lib路径顺序。

要查看旧DirectX SDK的各个组件的完整目录,请参见特定年龄的DirectX SDKDirectX SDK工具目录DirectX SDK示例目录,以及上面的“无D3DX的生活”文章。

Windows 10的Direct3D 11调试设备没有被任何Windows SDK或传统的DirectX SDK安装。这是一个Windows可选功能。请参见Direct3D SDK调试层技巧

实际的“DirectX运行时”自Windows XP Service Pack 2起就已成为操作系统的一部分。传统的DirectX SDK从不在任何现代版本的Windows上安装“DirectX”,只部署一些可选的并排内容。如果您使用Windows SDK,则根本不需要它。请参见不那么直接的设置


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接