2010-01-15 10 views
0

Je dois créer un maillage Direct3D composé de sommets (générés au moment de l'exécution) dont j'ai besoin en tant que combinaison de LineList et de TriangleList. c'est-à-dire que certains sommets sont rendus en tant que LineList et certains d'entre eux en tant que TriangleList.Maillage Direct3D avec combinaison de lignes et de triangles

Comment créer ce maillage Direct3D?

Répondre

1

Bien créer un tampon de vertex et y mettre tous les verts.

Ensuite, créez un tampon d'index. Mettez les index de la liste de lignes dans là. Ensuite, ajoutez les index de la liste de triangles au tampon d'index.

Enfin .. render, quelque chose comme ce qui suit:

pDevice->DrawIndexedPrimitive(D3DPT_LINELIST, 0, 0, numLineIndices, 0, numLineIndices/2); 
pDevice->DrawIndexedPrimitive(D3DPT_TRIANGLELIST, 0, 0, numTriangleIndices, 0, numTriangleIndices/3); 
+0

Est-il possible de combiner l'ensemble de ce qui précède en un seul objet maillé? –

+1

Si vous voulez dire un D3DXMesh .. non .. D3DXMeshes gérer uniquement les listes de triangles. Si vous parlez d'une sorte de maillage, alors assurez-vous. Cela dépend de la façon dont vous définissez votre structure de maillage. – Goz