我刚刚得知我正在使用的SDK(2010年6月)已经不再使用,我需要使用他们在Win10中包含的新版本。那么它在哪里?
我正在尝试启动一个图形演示解决方案,但由于链接器错误,我无法调用D3D11函数,这对我来说意味着我需要包含库等。
如果有人可以帮助我解决这个问题,让我能够继续进行下去,那就太好了。
我刚刚得知我正在使用的SDK(2010年6月)已经不再使用,我需要使用他们在Win10中包含的新版本。那么它在哪里?
我正在尝试启动一个图形演示解决方案,但由于链接器错误,我无法调用D3D11函数,这对我来说意味着我需要包含库等。
如果有人可以帮助我解决这个问题,让我能够继续进行下去,那就太好了。
对于HLSL,您可以直接使用D3DCompile或Windows SDK自带的FXC。对于数学,您可以使用Windows SDK自带的DirectXMath。如果您正在使用传统的Effects 11,则可以使用GitHub上的版本。我建议您还要查看DirectX 11工具包及其教程。有关D3DX替代品的完整列表,请参见无需D3DX。更新:对于旧项目,D3DX9、D3DX10和D3DX11库的传统DirectX SDK“终止生命周期”的2010年6月发布版提供了此NuGet包,需要与Windows 10 SDK结合使用。有关详细信息,请参见此博客文章。
如果您确实想继续在Visual Studio 2012或更高版本中使用传统的DirectX SDK组件,则可以,但是请注意上面MSDN页面底部的详细信息。特别是添加传统的DirectX SDK到项目时,必须反转include/lib路径顺序。
要查看旧DirectX SDK的各个组件的完整目录,请参见特定年龄的DirectX SDK、DirectX 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,则根本不需要它。请参见不那么直接的设置。