directx 9找不到包含库

时间:2014-10-10 16:26:34

标签: c++ visual-studio-2010 directx

我想在Visual C ++ 2010中开始学习DirectX,但是当我包含d3dx9.h时,它说d3dx11和d3dx9无法找到,我可以在DirectX 11中玩游戏而dxdiag说我的电脑正在运行directX 11 ,但是当我在C盘和我的D-Drive中搜索DirectX 11时,它找不到任何东西。所以我决定安装DirectX 11然后在安装后得到一个文件夹,但它没有任何包含或bin文件夹,所以我无法转到属性和VC ++并添加包含目录。决定尝试使用DirectX 9开始,但是当我安装DirectX 9 2010年6月版本时,我去了C \ Microsoft DirectX SDK(2010年6月)没有目录,只有DirectX实用程序和c ++文档以及示例浏览器和命令提示符。所以我不知道该怎么做了,我已经尝试安装d3dx9.lib并输入VS 2010的默认lib文件夹。但没有成功,但我有DirectX 9 2004夏季库和Include文件夹集视觉c ++,但这是一个旧版本,所以它不包括d3dx9.lib。我正在运行Windows 8.1 64位操作系统。

1 个答案:

答案 0 :(得分:3)

不推荐使用DirectX SDK和所有版本的D3DX库。

“现代”解决方案是使用Visual Studio 2012和Visual Studio 2013附带的Windows 8.x SDK。您可以安装Windows 8.1 SDK“独立”并使用{{3将其与Visual Studio 2010一起使用文件。有关所有详细信息,请参阅.propsMSDN帖子。

可以使用Windows 8.x SDK与旧版DirectX SDK混合以继续使用D3DX for Win32桌面应用程序 - 您无法使用DirectX SDK for Windows Store应用程序,Windows手机,或Xbox One。有关如何处理include / lib路径目录的信息,请参阅this blog上的说明。如果您要继续使用旧版DirectX SDK,您需要注意以下几点:

  • DirectX SDK(2010年6月)安装程序与安装了VS 2010 SP1 REDIST的系统存在一些兼容性问题。见MSDN post。
  • DirectX SDK(2010年6月)没有适用于Windows 8.1的最新开发人员调试运行时。您必须安装Windows 8.1 SDK,VS 2013或VS 2013远程调试工具才能获取DEBUG图层和REFERENCE设备。见this post。
  • Windows 8.1上的Direct3D 9 DEBUG设备有没有支持。
  • DirectX SDK中的“PIX for Windows”工具不适用于安装了DirectX 11.1 Runtime的Windows 8.1,Windows 8.0或Windows 7 SP1上的Direct3D 10.x或Direct3D 11.x.使用Visual Studio 2013图形诊断程序或Intel / AMD / NVIDIA的GPU工具。
  • 如果要部署需要D3DX等旧版DLL的游戏,请务必使用2011年4月更新的DXSETUP版本,而不是DirectX SDK中的副本(2010年6月)。请参阅this帖子,并务必阅读this

考虑到所有这些,如果您只使用Direct3D 11并完全避免使用传统的DirectX SDK和D3DX,那么您的生活将会轻松得多。您可以找到许多D3DX的Direct3D 11替换版,只需要Windows 8.x SDK以及一堆更新的示例。请参阅Not So DirectSetupLiving Without D3DXDirectX Tool Kit。您可以使用VS 2010获得所有这些功能,但是获得适用于Windows桌面的Visual Studio 2013 Express(适用于Win32桌面应用程序)和/或适用于Windows的Visual Studio 2013 Express(适用于Windows应用商店应用和Windows手机应用)要容易得多

PS:即使回到DirectX SDK仍然是获得VS 2010的Direct3D标头的支持方式,在您手动将include / path目录添加到项目之前,它仍然无法使用。这就是为什么你不能在新创建的项目中加入“d3dx9.h”。

相关问题