Hresult:发生了一个未确定的错误

时间:2013-03-17 18:13:12

标签: c++ visual-studio-2010 shader hresult

当我收到HRESULT错误“发生未确定的错误”(我正在使用DXGetErrorDescription()进行调试)时,我正在尝试使用D3DX11CompileFromFile()函数加载着色器文件。奇怪的是,我找不到甚至在HRESULT的MSDN文档中列出的错误。我不确定问题是什么,因为最近我的visual studio 2010 c ++ express已经表现出很多代码无关的错误。有没有其他人遇到过这个错误,如果有的话是什么问题?

我对程序进行了一些小改动,因为它上次工作完美。我正在遵循一个教程,所以人们会期望代码是正确的,但看到我是一个新手,我将列出更改的区域,因为它上次工作,以防万一有一些愚蠢的错误。

.fx -file:

 VS_OUTPUT VS(float4 inPos : POSITION, float4 inColor : COLOR)
 {
     VS_OUTPUT output;

     output.Pos = inPos;
     output.Color = inColor;

     return output;
 }

 float4 PS(VS_OUTPUT input) : SV_TARGET
 {
      return input.Color;
 }

已更改的其他代码:

   struct Vertex    //Overloaded Vertex Structure
   {
       Vertex(){}
       Vertex(float x, float y, float z, float cr, float cg, float cb, float ca)
           : pos(x,y,z), color(cr,cg,cb,ca){}

       XMFLOAT3 pos;
       XMFLOAT4 color;
   };


   //the layout, one element for each variable in the vertex struct
   D3D11_INPUT_ELEMENT_DESC layout[] =          
   {
       {"POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D11_INPUT_PER_VERTEX_DATA, 0 },
       {"COLOR", 0, DXGI_FORMAT_R32G32B32A32_FLOAT, 0, 12, D3D11_INPUT_PER_VERTEX_DATA, 0 },
   };
   UINT numElements = ARRAYSIZE(layout);        //the number of elements

我还将新参数添加到我使用它们的地方的顶点结构上。

0 个答案:

没有答案