Compartilhar via


estrutura D3DHAL_DP2INDEXEDLINELIST (d3dhal.h)

D3DHAL_DP2INDEXEDLINELIST é analisado do buffer de comando pelo retorno de chamada D3dDrawPrimitives2 quando o membro bCommand da estrutura D3DHAL_DP2COMMAND é definido como D3DDP2OP_INDEXEDLINELIST e é usado para renderizar as linhas usando índices de vértice.

Sintaxe

typedef struct _D3DHAL_DP2INDEXEDLINELIST {
  WORD wV1;
  WORD wV2;
} D3DHAL_DP2INDEXEDLINELIST, *LPD3DHAL_DP2INDEXEDLINELIST;

Membros

wV1

Especifica o índice no buffer de vértice, identificando o primeiro ponto de extremidade da linha.

wV2

Especifica o índice no buffer de vértice, identificando o segundo ponto de extremidade da linha.

Comentários

D3dDrawPrimitives2 deve processar (wPrimitiveCount * 2) índices do buffer de comando, processando de fato estruturas de D3DHAL_DP2INDEXEDLINELIST wPrimitiveCount . O valor de wPrimitiveCount é especificado na estrutura D3DHAL_DP2COMMAND.

O driver deve processar um total de vértices (wPrimitiveCount * 2) do buffer de vértice, dois vértices por linha. A sequência de linhas renderizadas é (wV1₀, wV2₀), (wV1₁, wV2₁), ..., (wV1n,wV2n), em que n é igual (wPrimitiveCount- 1). O driver deve interpretar os índices de buffer de vértice com base no comando atual da seguinte maneira:

  • Quando o comando é D3DDP2OP_INDEXEDLINELIST, os índices de buffer de vértice são relativos ao deslocamento de buffer de vértice especificado pelo membro dwVertexOffset da estrutura D3DHAL_DRAWPRIMITIVES2DATA .
  • Quando o comando é D3DDP2OP_INDEXEDLINELIST2, uma estrutura D3DHAL_DP2STARTVERTEX a segue imediatamente e precede as estruturas de D3DHAL_DP2INDEXEDLINELIST no buffer de comando. Os índices de buffer de vértice são relativos ao deslocamento de buffer de vértice especificado por dwVertexOffset mais o deslocamento base obtido do membro wVStart da estrutura de D3DHAL_DP2STARTVERTEX.
A figura a seguir mostra uma parte de um buffer de comando de exemplo contendo um comando D3DDP2OP_INDEXEDLINELIST e duas estruturas de D3DHAL_DP2INDEXEDLINELIST. O driver deve desenhar duas linhas usando os quatro vértices a seguir do buffer de vértice: (v[0], v[4]), (v[5], v[6]). Figura mostrando um buffer de comando com um comando D3DDP2OP_INDEXEDLINELIST e duas estruturas de D3DHAL_DP2INDEXEDLINELIST Da mesma forma, a figura a seguir mostra uma parte de um buffer de comando de exemplo contendo um comando D3DDP2OP_INDEXEDLINELIST2, um deslocamento de D3DHAL_DP2STARTVERTEX e duas estruturas de D3DHAL_DP2INDEXEDLINELIST. O driver deve processar quatro vértices do buffer de vértice, renderizando duas linhas definidas por (v[3], v[7]), (v[8], v[9]). Figura mostrando um buffer de comando com um comando D3DDP2OP_INDEXEDLINELIST2, um deslocamento de D3DHAL_DP2STARTVERTEX e duas estruturas de D3DHAL_DP2INDEXEDLINELIST

Requisitos

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

Confira também

D3DDP2OP_INDEXEDLINELIST

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2