Frage

Ich muss ein Direct3D-Netz erstellen, das aus einigen Scheitelpunkten besteht (die zur Laufzeit generiert sind), die ich als Kombination aus Linelist und Trianglelist wiedergegeben habe. dh einige Eckpunkte werden als Linienliste und einige von ihnen als Trianglelist gerendert.

Wie kann ich dieses Direct3D -Netz erstellen?

War es hilfreich?

Lösung

Erstellen Sie einen Scheitelpunktpuffer und geben Sie alle Verts hinein.

Erstellen Sie als nächstes einen Indexpuffer. Stellen Sie die Zeilenlistenindizes dort ein. Fügen Sie als nächstes die Dreieckslistenindizes dem Indexpuffer hinzu.

Endlich .. rendern, so etwas wie folgt:

pDevice->DrawIndexedPrimitive( D3DPT_LINELIST, 0, 0, numLineIndices, 0, numLineIndices / 2 );
pDevice->DrawIndexedPrimitive( D3DPT_TRIANGLELIST, 0, 0, numTriangleIndices, 0, numTriangleIndices / 3 );
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top