我在 Visual Studio 中的 C 文件中有以下代码...它可以正常编译,但它会在 DLL 函数调用中挂起计算机...
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?
我一直在使用 Frank D. Luna 所著的《使用 DirectX 11 进行 3d 游戏编程》一书
希望能帮到你
最佳答案
Frank Luna 的书是在 DirectX SDK 被终止前大约 3 分钟出版的,所以他的书中的很多内容都提到了你最好不要使用 D3DX11 之类的东西。也就是说,有很多好的替代品。请参阅Where is the DirectX SDK (2015 Edition)? , Living without D3DX和 this post一些具体的注释。
有关 Direct3D 11 设备创建的详细演练,请阅读 Anatomy of Direct3D 11 Create Device .
As you are new to Direct3D 11, I'd recommend taking a look at the DirectX Tool Kit tutorials.
关于c - Visual Studio 中的 DirectX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40473918/