2016-11-07 105 views
0

我有在Visual Studio我的C文件下面的代碼...它編譯好了,但它掛在DLL函數調用計算機...的DirectX在Visual Studio

hr = D3D11CreateDevice(NULL, D3D_DRIVER_TYPE_HARDWARE, NULL, 0, 0, 0, D3D11_SDK_VERSION, &gamedevice, &featureLevel, &gamedevicecontext); 
fprintf_s(debugfile, "called CreateDevice()...\n"); 
fflush(debugfile); 
if(FAILED(hr)) 
{ 
MessageBox(0, "D3D11CreateDevice Failed.", 0, 0); 
return 0; 
} 

有一大堆更多的代碼之後,但調試文件顯示,它沒有達到它......我是通過首先在我的應用中使用D3D11CreateDevice做正確的事情還是我需要首先使用枚舉類型代碼?我如何在Visual Studio中調試D3D DLL?

我一直在使用這本書「使用的DirectX 11 3D遊戲編程」由Frank D.月神

希望你能幫助

+0

這是不夠的信息,因爲你沒有包括你聲明所有這些類型的地方。 –

回答

0

弗蘭克·盧娜的書出版約3分鐘的DirectX SDK中被殺害關閉之前,所以他的很多書都提到你最好不要使用類似D3DX11的東西。這就是說,有很多好的替代品。對於一些特定的筆記,請參閱Where is the DirectX SDK (2015 Edition)?Living without D3DXthis post

有關Direct3D 11設備創建的詳細演練,請閱讀Anatomy of Direct3D 11 Create Device

由於您是Direct3D 11的新手,我建議您查看DirectX Tool Kit tutorials

0

Frank Luna在他的書d3dx11庫中使用,現在已棄用。很多功能都從LIB搬到d3d11.lib和dxgi.lib,這應該也包括到您的項目,以及dxgi.h頭:

#include <d3d11.h> 
#include <dxgi.h> 

#pragma comment(lib, "d3d11.lib") 
#pragma comment(lib, "dxgi.lib") 

附:和@Chuck Walbourn提到的嘗試DirectX工具包