2016-01-02 52 views
0

我正在关注在YouTube上构建DX11Engine的教程,我陷入了困境。我试图呈现一个精灵到屏幕上,但是当我尝试运行它,我得到DX11引擎故障

访问冲突读取位置00000000"

问题是在该行发生。

result = device->CreateVertexShader(vertexShaderBuffer->GetBufferPointer(), vertexShaderBuffer->GetBufferSize(), NULL, &m_vertexShader); 

这是Shader.cpp。

我已经上传我的代码到Git的枢纽https://github.com/nowayout2k/PJTS-CPP-DX11Engine。感谢您的帮助提前!

+0

你应该看看[DirectX工具包](https://github.com/Microsoft/DirectXTK),它是[教程](https://github.com/Microsoft/DirectXTK/wiki/Getting-Started )。 –

回答

0

访问冲突在0x00000000听起来像你访问一个空指针。您可能试图在其上调用虚拟方法,因此该进程试图读取对象开头处的虚拟表指针并失败,因为它将是零地址。

确保变量devicevertexShaderBuffer不是空指针。如果是,它可能表示在初始化时发生错误。

+0

看来设备是NULL,但我不知道为什么。我会继续寻找。 –

+0

发现它是我返回零而不是设备fp。谢谢你的帮助。 –