Hi,
I'm trying to map a D3DVERTEXELEMENT9 structure to my vertex shader.
The shader input struct is:
float3 pos : POSITION;
float4 texcoord : TEXCOORD0;
float4 detRow1 : TEXCOORD1;
float4 detRow2 : TEXCOORD2;
float4 detRow3 : TEXCOORD3;
float4 detRow4 : TEXCOORD4;
what I'm trying to do is something like this:
D3DVERTEXELEMENT9 vertex[7] = { { 0, 0, D3DDECLTYPE_FLOAT3, 0, D3DDECLUSAGE_POSITION, 0 },
{ 0, 12, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD, 0 },
{ 0, 28, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD1, 0 },
{ 0, 44, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD2, 0 },
{ 0, 60, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD3, 0 },
{ 0, 76, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD4, 0 }, D3DDECL_END() };
But D3DDECLUSAGE_TEXCOORD1 - 4 are not defined. So what to do
Nico

How to specify multiple tex coords using D3DVERTEXELEMENT9
GwapoJoe
Israel213
Is it that I have to set the usage index to the according tex unit
Like
D3DVERTEXELEMENT9 vertex[7] = { { 0, 0, D3DDECLTYPE_FLOAT3, 0, D3DDECLUSAGE_POSITION, 0 },
{ 0, 12, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD, 0 },
{ 0, 28, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD, 1 },
{ 0, 44, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD, 2 },
{ 0, 60, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD, 3 },
{ 0, 76, D3DDECLTYPE_FLOAT4, 0, D3DDECLUSAGE_TEXCOORD, 4 }, D3DDECL_END() };
Probably. ;-) I will try that.