Vertex Declaration with Fixed Function pipeline

Thanks for replying,
I really do this but it doesn't works:

struct CUSTOMVERTEX

{

FLOAT x, y, z;

D3DCOLOR color;

};

D3DVERTEXELEMENT9 decl[] =

{

{ 0, 0, D3DDECLTYPE_FLOAT3, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_POSITION, 0 },

{ 0, 12, D3DDECLTYPE_D3DCOLOR, D3DDECLMETHOD_DEFAULT, D3DDECLUSAGE_COLOR, 0 },

D3DDECL_END()

};

g_pd3dDevice->CreateVertexDeclaration(decl,&g_pVertexDecl);

g_pd3dDevice->CreateVertexBuffer( 3*sizeof(CUSTOMVERTEX),

0, 0/*D3DFVF_CUSTOMVERTEX*/,

D3DPOOL_MANAGED, &g_pVB, NULL );

//On rendering

if( SUCCEEDED( g_pd3dDevice->BeginScene() ) )

{

g_pd3dDevice->SetVertexDeclaration(g_pVertexDecl);

g_pd3dDevice->SetStreamSource( 0, g_pVB, 0,sizeof(CUSTOMVERTEX) );

g_pd3dDevice->DrawPrimitive( D3DPT_TRIANGLELIST, 0, 1 );

g_pd3dDevice->EndScene();

}

Thanks,
Mustafa ELBanna
[2333 byte] By [MustafaELBanna] at [2008-2-7]