forse sto diventando scemo io, o non so...
fatto sta che sto avendo u problema con Directx/C++...

sto convertendo i tutorial di riemer in c++/dx9.0, ma mi sta dando qualche grattacapo già la prima struct...

C#/XNA
Codice:
public struct VertexMultitextured
        {
            public Vector3 Position;
            public Vector3 Normal;
            public Vector4 TextureCoordinate;
            public Vector4 TexWeights;

            public static int SizeInBytes = (3 + 3 + 4 + 4) * 4;
            public static VertexElement[] VertexElements = new VertexElement[]
              {
                  new VertexElement( 0, 0, VertexElementFormat.Vector3, VertexElementMethod.Default, VertexElementUsage.Position, 0 ),
                  new VertexElement( 0, sizeof(float) * 3, VertexElementFormat.Vector3, VertexElementMethod.Default, VertexElementUsage.Normal, 0 ),
                  new VertexElement( 0, sizeof(float) * 6, VertexElementFormat.Vector4, VertexElementMethod.Default, VertexElementUsage.TextureCoordinate, 0 ),
                  new VertexElement( 0, sizeof(float) * 10, VertexElementFormat.Vector4, VertexElementMethod.Default, VertexElementUsage.TextureCoordinate, 1 ),
              };
        }
questa la conversione
C++/Dx9
Codice:
typedef struct VertexMultitextured
{
public:
    D3DXVECTOR3 Position;
    D3DXVECTOR3    Normal;
    D3DXVECTOR4 TextureCoordinate;
    D3DXVECTOR4 TexWeight;
    static const int SizeInBytes = ( 3 + 3 + 4 + 4 ) * 4;
    static D3DVERTEXELEMENT9 VertexElements[] =
    {
        { 0, 0, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 },
        { 0, sizeof( float ) *3, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_NORMAL, 0 },
        { 0, sizeof( float ) *6, D3DDECLTYPE_FLOAT4, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_TEXCOORD, 0 },
        { 0, sizeof( float ) *10, D3DDECLTYPE_FLOAT4, D3DDECLMETHOD_DEFAULT, D3DDECUSAGE_TEXCOORD, 1 },
    };

} VertexMultitextured;
cosa canno?
non mi sembra sia sbagliata [ poteri anche sbagliarmi... ]