Directx 11 运行时错误
Posted
技术标签:
【中文标题】Directx 11 运行时错误【英文标题】:Directx 11 runtime error 【发布时间】:2014-11-17 10:54:54 【问题描述】:我正在尝试在 Visual Studio 2013(Express) 上运行 Frank D Luna 的演示项目,我收到了一个 unexpected error encountered error code: D3D11_FILE_NOT_FOUND
- 在调用 D3D11Compilefromfile
时,你想调试应用程序等吗
这里是触发断点的地方:
HR(D3DX11CreateEffectFromMemory(compiledShader->GetBufferPointer(), compiledShader->GetBufferSize(), 0, md3dDevice, &mFX));
【问题讨论】:
将标题更改为运行时错误,因为它不是编译错误;除此之外:您谈论 D3D11Compilefromfile 的错误,但显示的代码行是关于 D3DX11CreateEffectFromMemory? 感谢您更改标题 :) 是的,这就是我获得断点的地方 【参考方案1】:首先,确保您使用的是 CodePlex 上的最新 Effects 11。
其次,您发布的代码没有调用D3D11CompileFromFile
,因此很难说这里有什么问题。 D3D11_FILE_NOT_FOUND
通常是因为当前工作目录不是你想的那样,或者你提供的路径不正确。顺便说一句,最新的 Effects11 有一个D3DX11CreateEffectFromFile
,所以你不必自己编写这个两步过程。
第三,由于您使用的是 VS 2013 Express,请务必阅读Where is the DirectX SDK (2013 Edition)? 和Visual Studio 2013 and Windows 8.1 SDK RTM are now available。希望您只是避免同时使用旧版 DirectX SDK 和 D3DX(请参阅Living without D3DX),但如果不确定您是否具有正确的 include/lib 路径顺序,如 MSDN 上所示。
【讨论】:
谢谢你,我的朋友;)以上是关于Directx 11 运行时错误的主要内容,如果未能解决你的问题,请参考以下文章
Windows 8.1 上的 DirectX 11 缺少 SDK 组件
DirectX - 按 ctrl + alt + del 时出错
DirectX OMSetRenderTargets 中的访问冲突