C++ 在VS2012的DirectX 11中运行应用程序时未绑定顶点着色器
在我的大学课程中,我得到了一些示例基础应用程序,这些应用程序显示了使用DirectX 11可以实现的不同功能和功能。在大学计算机和其他一些计算机上,这些都运行良好。然而,在我的笔记本电脑上,不是最强大的机器,有些应用程序工作正常,而其他应用程序运行正常,但只显示一个只有屏幕背景颜色的空白窗口。查看“输出”窗口时,会出现大量D3D11错误,说明顶点着色器未绑定,因此屏幕上看不到任何内容 出现在调试窗口中的两个错误(它们不会出现在错误列表中)是:C++ 在VS2012的DirectX 11中运行应用程序时未绑定顶点着色器,c++,visual-studio,visual-studio-2012,directx-11,vertex-shader,C++,Visual Studio,Visual Studio 2012,Directx 11,Vertex Shader,在我的大学课程中,我得到了一些示例基础应用程序,这些应用程序显示了使用DirectX 11可以实现的不同功能和功能。在大学计算机和其他一些计算机上,这些都运行良好。然而,在我的笔记本电脑上,不是最强大的机器,有些应用程序工作正常,而其他应用程序运行正常,但只显示一个只有屏幕背景颜色的空白窗口。查看“输出”窗口时,会出现大量D3D11错误,说明顶点着色器未绑定,因此屏幕上看不到任何内容 出现在调试窗口中的两个错误(它们不会出现在错误列表中)是: 但是,这些程序在其他机器上运行正常。我是否需要在笔记
但是,这些程序在其他机器上运行正常。我是否需要在笔记本电脑上进行某种配置,或者可能是因为即使某些应用程序可以正常工作,技术能力也较低?您是否验证了
CreateVertexShader
是否成功?我猜您正在编译vs_4_0
或更高版本,并试图在功能级\u 9_3
(或\u 9_1
)设备上创建它。这会导致创建失败,因此最终会将NULL传递给VSSetShader
。修复方法是编译vs_4_0_level_9_3
(或\u 9_1
)目标的着色器。
D3D11 ERROR: ID3D11DeviceContext::DrawAuto: A Vertex Shader is always required when drawing, but none is currently bound. [ EXECUTION ERROR #341: DEVICE_DRAW_VERTEX_SHADER_NOT_SET]
D3D11 ERROR: ID3D11DeviceContext::DrawAuto: Rasterization Unit is enabled (PixelShader is not NULL or Depth/Stencil test is enabled and RasterizedStream is not D3D11_SO_NO_RASTERIZED_STREAM) but position is not provided by the last shader before the Rasterization Unit. [ EXECUTION ERROR #362: DEVICE_DRAW_POSITION_NOT_PRESENT]