创建DirectX 10设备和交换链的问题



我在使用D3D10CreateDeviceAndSwapChain创建有效的DirectX 10设备和交换链时遇到了一些问题。我认为这可能是我的窗口创建出了问题,因为它说提供的SwapChainDesc中的outputwwindow未使用=??(或一个随机的int值)

这个问题一直困扰着我,因为我似乎找不到项目代码有什么问题

我知道它在CDirect3D.cpp的第193行失败了

result = D3D10CreateDeviceAndSwapChain(NULL, D3D10_DRIVER_TYPE_HARDWARE, NULL, 0, D3D10_SDK_VERSION, &swapChainDesc, &this->m_swapChain, &this->m_device);
如果有人能看一下代码,我将非常感激。我已经上传了项目和它的源代码http://dl.dropbox.com/u/3605545/files/LearningEngine.zip

(不是很大的代码库,到目前为止只有4个类)

该项目是在VS2010和我使用DirectX SDK从2010年6月

我发现了问题,我打错了这一行:

swapChainDesc.BufferDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM;

应该是:

swapChainDesc.BufferDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM;

最新更新