Compartilhar via


estrutura D3DHAL_DP2TRIANGLEFAN_IMM (d3dhal.h)

Uma estrutura D3DHAL_DP2TRIANGLEFAN_IMM é analisada do buffer de comando pelo retorno de chamada D3dDrawPrimitives2 quando o membro bCommand da estrutura D3DHAL_DP2COMMAND é definido como D3DDP2OP_TRIANGLEFAN_IMM e é usado para renderizar um ventilador de triângulo.

Sintaxe

typedef struct _D3DHAL_DP2TRIANGLEFAN_IMM {
  DWORD dwEdgeFlags;
} D3DHAL_DP2TRIANGLEFAN_IMM;

Membros

dwEdgeFlags

Especifica uma máscara de bits que identifica qual das bordas externas do ventilador deve ser renderizada quando o modo de preenchimento é D3DFILL_WIREFRAME. Um bit definido indica que sua borda correspondente deve ser renderizada. Para obter mais informações sobre essa máscara de bits, consulte a seção Comentários.

Comentários

Uma estrutura D3DHAL_DP2TRIANGLEFAN_IMM segue imediatamente a estrutura D3DHAL_DP2COMMAND no buffer de comando. Os dados de vértice do ventilador de triângulo são alinhados ao DWORD imediatamente após a estrutura D3DHAL_DP2TRIANGLEFAN_IMM no buffer de comando.

D3dDrawPrimitives2 deve processar um total de vértices wPrimitiveCount+2 do buffer de comando, três vértices por triângulo, renderizando triângulos wPrimitiveCount . A sequência de triângulos renderizados é (V[1], V[2], V[0]), (V[2], V[3], V[0]), (V[3], V[4], V[0]), ..., (V[wPrimitiveCount], V[wPrimitiveCount] + 1], V[0]). O valor de wPrimitiveCount é especificado na estrutura D3DHAL_DP2COMMAND.

O driver deve marcar o sinalizador de borda para cada uma das bordas externas do ventilador quando o modo de preenchimento é D3DFILL_WIREFRAME. A partir do bit menos significativo de dwEdgeFlags, bit 0 aplica-se à borda V[0]-V[1] , bit 1 aplica-se à borda V[1]-V[2] , ..., bit wPrimitiveCountaplica-se à borda V[wPrimitiveCount]-V[[wPrimitiveCount]+1] e bit (wPrimitiveCount + 1) aplica-se à borda V[[wPrimitiveCount]+1]-V[0] Borda.

A figura a seguir mostra uma parte de um buffer de comando de exemplo que contém um comando D3DDP2OP_TRIANGLEFAN_IMM, uma estrutura D3DHAL_DP2TRIANGLEFAN_IMM e os dados de vértice. O driver deve processar os cinco vértices do buffer de comando, renderizando um ventilador com três triângulos definidos por (v[1], v[2], v[0]), (v[2], v[3], v[0]), (v[3], v[4], v[0]).

Figura mostrando um buffer de comando com um comando D3DDP2OP_TRIANGLEFAN_IMM, uma estrutura D3DHAL_DP2TRIANGLEFAN_IMM e os dados de vértice

Requisitos

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

Confira também

D3DDP2OP_TRIANGLEFAN_IMM

D3DHAL_DP2COMMAND

D3dDrawPrimitives2