J'explique mon problème. J'ai fait un cube à la main avec 36 vertex. J'ai mit une couleur différente sur chaque face mais j'ai bizarement j'ai des faces transparentes. Comme si DirectX n'était pas capable de savoir quelle face est dévant et derrière.
Comme je disais auparavant,il faut utiliser le culling car ici comme tu affiches tout, il dessine les faces supposées non visibles par dessus les visibles et c'est le bazard. Faut utiliser D3DCULL_NONE seulement quand on veut voir ce qu'il y a derrière (ex.faces translucides etc..)
Ici :
g_pd3dDevice->SetRenderState(D3DRS_CULLMODE, D3DCULL_CCW);
et déclarer tes triangles en conséquence (sens trigo ici).
Je comprends pas trop ce que tu veux faire :
pour que justement seules les faces visibles soient affichées, il faut utiliser le culling. Sinon DX va même pas chercher à savoir ce qu'on est censé voir, il va tout afficher.
Si tu pouvais spécifier le résultat que tu aimerais obtenir...
Autre chose en passant : utilise un indexbuffer, y aura que 8 points à stocker...
Je veux seulement faire un cube opaque. Parce que la comme tu le voie sur le screen shot le carré délémiter en rouge on le voie pas mais sa couleur est sur la face du fond et sur la face du côté.
Voici le code pour mon cube :
CUSTOMVERTEX g_Vertices[3600];
// Création de Vertices Manuelle
int k = 0;
// Fond :: Rouge
g_Vertices[0].position = D3DXVECTOR3(-5.0f, -5.0f, 0.0f);
g_Vertices[1].position = D3DXVECTOR3(5.0f, -5.0f, 0.0f);
g_Vertices[2].position = D3DXVECTOR3(-5.0f, 5.0f, 0.0f);