Freigeben über


D3DHAL_DP2TRIANGLESTRIP Struktur (d3dhal.h)

Eine D3DHAL_DP2TRIANGLESTRIP Struktur wird vom D3dDrawPrimitives2-Rückruf aus dem Befehlspuffer analysiert, wenn der bCommand-Member der D3DHAL_DP2COMMAND-Struktur auf D3DDP2OP_TRIANGLESTRIP festgelegt ist und zum Rendern des angegebenen verbundenen Dreieckstreifens verwendet wird.

Syntax

typedef struct _D3DHAL_DP2TRIANGLESTRIP {
  WORD wVStart;
} D3DHAL_DP2TRIANGLESTRIP, *LPD3DHAL_DP2TRIANGLESTRIP;

Member

wVStart

Gibt den Index für den Vertexpuffer an, der Koordinatendaten für den anfänglichen Scheitelpunkt des Dreiecksstreifens enthält.

Hinweise

Eine D3DHAL_DP2TRIANGLESTRIP-Struktur folgt der D3DHAL_DP2COMMAND-Struktur im Befehlspuffer.

D3dDrawPrimitives2 sollte insgesamt (wPrimitiveCount + 2) Scheitelpunkte aus dem Vertexpuffer verarbeiten. Der Wert von wPrimitiveCount wird in der D3DHAL_DP2COMMAND-Struktur angegeben.

Die Dreiecksränder in einem Dreiecksstreifen werden in der folgenden Reihenfolge gerendert: (wV[0], wV[1], wV[2]), (wV[1], wV[3], wV[2],wV[3], wV[4]), (wV[3], wV[5], wV[4]),...

Für das letzte Dreieck im Dreiecksstreifen werden die Kanten jedoch in unterschiedlichen Reihenfolgen gerendert, wenn wPrimitiveCountt ungerade und gerade ist.

  • Wenn wPrimitiveCount eine ungerade Zahl ist, werden die Kanten des letzten Dreiecks in der folgenden Reihenfolge gerendert: (wV[wPrimitiveCount - 1], wV[wPrimitiveCount], wV[wPrimitiveCount + 1]).
  • Wenn wPrimitiveCount eine gerade Zahl ist, werden die Kanten des letzten Dreiecks in der folgenden Reihenfolge gerendert: (wV[wPrimitiveCount- 1], wV[wPrimitiveCount + 1], wV[wPrimitiveCount).
Die folgende Abbildung zeigt einen Teil eines Beispielbefehlspuffers, der einen D3DDP2OP_TRIANGLESTRIP-Befehl und eine D3DHAL_DP2TRIANGLESTRIP-Struktur enthält. Der Treiber sollte fünf Scheitelpunkte aus dem Vertexpuffer verarbeiten und dabei einen Streifen aus drei Dreiecken rendern, die durch (v[0], v[1], v[2]), (v[1], v[3], v[2]), (v[2], v[3], v[4]) definiert sind. Abbildung eines Befehlspuffers mit einem D3DDP2OP_TRIANGLESTRIP-Befehl und einer D3DHAL_DP2TRIANGLESTRIP-Struktur

Anforderungen

Anforderung Wert
Header d3dhal.h (include D3dhal.h)

Weitere Informationen

D3DDP2OP_TRIANGLESTRIP

D3DHAL_DP2COMMAND

D3dDrawPrimitives2