Layout DX11的输入布局错误

Layout DX11的输入布局错误,layout,input,direct3d11,Layout,Input,Direct3d11,我尝试使用不同的输入布局编写新的顶点着色器(确切地说,顶点着色器为NULL,输入将进入几何体着色器,但这不应该有什么区别),就像我的应用程序中的其他着色器一样。但是我在创建输入布局的过程中得到了无效的arg,我不知道为什么。下面是我的C++/shader代码: C++中的顶点定义: typedef结构顶点 { 顶点(){} 顶点(常数xm3&p, 常数xm4&c, 常数xm3&n, 常量xm3和tu, 常数(2&t) :位置(p)、法线(n)、切线u(tu)、TexC(t){ 顶点(浮动px、

我尝试使用不同的输入布局编写新的顶点着色器(确切地说,顶点着色器为NULL,输入将进入几何体着色器,但这不应该有什么区别),就像我的应用程序中的其他着色器一样。但是我在创建输入布局的过程中得到了无效的arg,我不知道为什么。下面是我的C++/shader代码:

C++中的顶点定义:

typedef结构顶点
{
顶点(){}
顶点(常数xm3&p,
常数xm4&c,
常数xm3&n,
常量xm3和tu,
常数(2&t)
:位置(p)、法线(n)、切线u(tu)、TexC(t){
顶点(浮动px、浮动py、浮动pz、,
浮子n1、浮子n2、浮子n3、,
浮球tu1,浮球tu2,浮球tu3,
浮动t1,浮动t2)
:位置(px,py,pz),法线(n1,n2,n3),切线u(tu1,tu2,tu3),TexC(t1,t2){
顶点(浮动px、浮动py、浮动pz)
:位置(px,py,pz),法线(0.0f,0.0f,0.0f),切线U(0.0f,0.0f,0.0f),TexC(0.0f,0.0f){
布尔运算符==(常数顶点和v)
{
返回值(memcmp(&(此->位置),&(v.Position),sizeof(位置))==0);
}
顶点和运算符=(常数顶点和v)
{
memcpy(此,&v,尺寸(*此));
归还*这个;
}
布尔运算符!=(常数顶点和v)
{
如果((位置x!=v.Position.x)||
(Position.y!=v.Position.y)||
(位置z!=v位置z))
返回true;
返回false;
}
void Init(void)
{
零内存(this,sizeof(*this));
}
xm3位;
//照明数据
xm3正常;
xm3切向u;
//纹理数据
xm2 TexC;

}特维特斯第一个逻辑步骤是启用DirectX 11。之后,您可以自己快速解决问题,或者在这里发布完整的错误描述。它表示:编码的签名大小与指定的大小不匹配。但我仍然看不到错误。我将整个FX文件和技术定义添加到我的帖子中。你可以使用空几何体着色器,但我不相信你可以使用空顶点着色器。顺便问一下,你使用的是最新的吗?