estrutura D3DHAL_DP2TRIANGLESTRIP (d3dhal.h)

Uma estrutura D3DHAL_DP2TRIANGLESTRIP é analisada do buffer de comando pelo retorno de chamada D3dDrawPrimitives2 quando o membro bCommand da estrutura D3DHAL_DP2COMMAND é definido como D3DDP2OP_TRIANGLESTRIP e é usado para renderizar a faixa de triângulo conectada especificada.

Sintaxe

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

Membros

wVStart

Especifica o índice para o buffer de vértice que contém dados de coordenadas para o vértice inicial da faixa de triângulos.

Comentários

Uma estrutura D3DHAL_DP2TRIANGLESTRIP segue a estrutura D3DHAL_DP2COMMAND no buffer de comandos.

D3dDrawPrimitives2 deve processar um total de vértices (wPrimitiveCount + 2) do buffer de vértice. O valor de wPrimitiveCount é especificado na estrutura D3DHAL_DP2COMMAND.

As bordas do triângulo em uma faixa de triângulo são renderizadas nesta ordem: (wV[0], wV[1], wV[2]), (wV[1], wV[3], wV[2]), (wV[2], wV[3], wV[4]), (wV[3], wV[5], wV[4]),...

No entanto, para o último triângulo na faixa de triângulos, as bordas são renderizadas em ordens diferentes quando wPrimitiveCountt é ímpar e quando está par.

  • Quando wPrimitiveCount é um número ímpar, as bordas do último triângulo são renderizadas nesta ordem: (wV[wPrimitiveCount - 1], wV[wPrimitiveCount], wV[wPrimitiveCount + 1]).
  • Quando wPrimitiveCount é um número par, as bordas do último triângulo são renderizadas nesta ordem: (wV[wPrimitiveCount- 1], wV[wPrimitiveCount + 1], wV[wPrimitiveCount).
A figura a seguir mostra uma parte de um buffer de comando de exemplo que contém um comando D3DDP2OP_TRIANGLESTRIP e uma estrutura D3DHAL_DP2TRIANGLESTRIP. O driver deve processar cinco vértices do buffer de vértice, renderizando uma faixa de três triângulos definidos por (v[0], v[1], v[2]), (v[1], v[3], v[2]), (v[2], v[3], v[4]). Figura mostrando um buffer de comando com um comando D3DDP2OP_TRIANGLESTRIP e uma estrutura D3DHAL_DP2TRIANGLESTRIP

Requisitos

Requisito Valor
Cabeçalho d3dhal.h (inclua D3dhal.h)

Confira também

D3DDP2OP_TRIANGLESTRIP

D3DHAL_DP2COMMAND

D3dDrawPrimitives2