2017-02-19 103 views
3

我剛剛在Visual Studio 2012最終做了一個項目。在該項目和它的源文件,我添加了一個main.cpp中,並做無法打開源文件d3dx10.h

#include <d3dx10.h> 

我得到的錯誤

cannot open source file d3dx10.h 

我使用,因此不DIRECTX隨Windows 10有?

回答

1

Visual Studio 2012包括提供DirectX頭文件和庫的Windows 8 SDK,但不包含包含棄用的幫助程序實用程序代碼。 D3DX實用程序庫(D3DX9,D3DX10和D3DX11)與傳統DirectX SDK本身一樣已棄用。請參閱MSDN

最好的建議是使用Direct3D 11而不是Direct3D 10. Direct3D 11在所有支持的平臺上完全取代了Direct3D 10,可以在更廣泛的視頻硬件上工作,並且具有全套開源實用程序代碼更換。

Living without D3DX
Where is the DirectX SDK (2015 Edition)?
DirectX SDK Samples Catalog
DirectX SDK Tools Catalog
Direct3D Feature Levels

與此類似,我推薦使用VS 2015年而不是2012 VS其中Windows自帶的8.1 ​​SDK。因爲VS已經有很多C++語言11的改進和bug修復2012

如果需要,可以混合使用舊版的DirectX SDK使用隨VS 2012或更高版本的Windows 8的SDK,但你需要從傳統訂單中反轉include/lib路徑。還有一些其他的怪癖可以解決。

對於x86/Win32的配置:

$(ExecutablePath);$(DXSDK_DIR)Utilities\bin\x86 
$(IncludePath);$(DXSDK_DIR)Include 
$(LibraryPath);$(DXSDK_DIR)Lib\x86 

對於x64本地配置:

$(ExecutablePath);$(DXSDK_DIR)Utilities\bin\x64;$(DXSDK_DIR)Utilities\bin\x86 
$(IncludePath);$(DXSDK_DIR)Include 
$(LibraryPath);$(DXSDK_DIR)Lib\x64