enumeração D3DHAL_DP2OPERATION (d3dhal.h)

O D3DHAL_DP2OPERATION tipo enumerado especifica a operação D3dDrawPrimitives2 no membro bCommand da estrutura D3DHAL_DP2COMMAND . Os enumeradores de D3DHAL_DP2OPERATION podem especificar operações de renderização primitiva ou nãoprimitiva. Os enumeradores de D3DHAL_DP2OPERATION também podem especificar que o driver retornou respostas a consultas emitidas anteriormente.

Syntax

typedef enum _D3DHAL_DP2OPERATION {
  D3DDP2OP_POINTS,
  D3DDP2OP_INDEXEDLINELIST,
  D3DDP2OP_INDEXEDTRIANGLELIST,
  D3DDP2OP_RENDERSTATE,
  D3DDP2OP_LINELIST,
  D3DDP2OP_LINESTRIP,
  D3DDP2OP_INDEXEDLINESTRIP,
  D3DDP2OP_TRIANGLELIST,
  D3DDP2OP_TRIANGLESTRIP,
  D3DDP2OP_INDEXEDTRIANGLESTRIP,
  D3DDP2OP_TRIANGLEFAN,
  D3DDP2OP_INDEXEDTRIANGLEFAN,
  D3DDP2OP_TRIANGLEFAN_IMM,
  D3DDP2OP_LINELIST_IMM,
  D3DDP2OP_TEXTURESTAGESTATE,
  D3DDP2OP_INDEXEDTRIANGLELIST2,
  D3DDP2OP_INDEXEDLINELIST2,
  D3DDP2OP_VIEWPORTINFO,
  D3DDP2OP_WINFO,
  D3DDP2OP_SETPALETTE,
  D3DDP2OP_UPDATEPALETTE,
  D3DDP2OP_ZRANGE,
  D3DDP2OP_SETMATERIAL,
  D3DDP2OP_SETLIGHT,
  D3DDP2OP_CREATELIGHT,
  D3DDP2OP_SETTRANSFORM,
  D3DDP2OP_TEXBLT,
  D3DDP2OP_STATESET,
  D3DDP2OP_SETPRIORITY,
  D3DDP2OP_SETRENDERTARGET,
  D3DDP2OP_CLEAR,
  D3DDP2OP_SETTEXLOD,
  D3DDP2OP_SETCLIPPLANE,
  D3DDP2OP_CREATEVERTEXSHADER,
  D3DDP2OP_DELETEVERTEXSHADER,
  D3DDP2OP_SETVERTEXSHADER,
  D3DDP2OP_SETVERTEXSHADERCONST,
  D3DDP2OP_SETSTREAMSOURCE,
  D3DDP2OP_SETSTREAMSOURCEUM,
  D3DDP2OP_SETINDICES,
  D3DDP2OP_DRAWPRIMITIVE,
  D3DDP2OP_DRAWINDEXEDPRIMITIVE,
  D3DDP2OP_CREATEPIXELSHADER,
  D3DDP2OP_DELETEPIXELSHADER,
  D3DDP2OP_SETPIXELSHADER,
  D3DDP2OP_SETPIXELSHADERCONST,
  D3DDP2OP_CLIPPEDTRIANGLEFAN,
  D3DDP2OP_DRAWPRIMITIVE2,
  D3DDP2OP_DRAWINDEXEDPRIMITIVE2,
  D3DDP2OP_DRAWRECTPATCH,
  D3DDP2OP_DRAWTRIPATCH,
  D3DDP2OP_VOLUMEBLT,
  D3DDP2OP_BUFFERBLT,
  D3DDP2OP_MULTIPLYTRANSFORM,
  D3DDP2OP_ADDDIRTYRECT,
  D3DDP2OP_ADDDIRTYBOX,
  D3DDP2OP_CREATEVERTEXSHADERDECL,
  D3DDP2OP_DELETEVERTEXSHADERDECL,
  D3DDP2OP_SETVERTEXSHADERDECL,
  D3DDP2OP_CREATEVERTEXSHADERFUNC,
  D3DDP2OP_DELETEVERTEXSHADERFUNC,
  D3DDP2OP_SETVERTEXSHADERFUNC,
  D3DDP2OP_SETVERTEXSHADERCONSTI,
  D3DDP2OP_SETSCISSORRECT,
  D3DDP2OP_SETSTREAMSOURCE2,
  D3DDP2OP_BLT,
  D3DDP2OP_COLORFILL,
  D3DDP2OP_SETVERTEXSHADERCONSTB,
  D3DDP2OP_CREATEQUERY,
  D3DDP2OP_SETRENDERTARGET2,
  D3DDP2OP_SETDEPTHSTENCIL,
  D3DDP2OP_RESPONSECONTINUE,
  D3DDP2OP_RESPONSEQUERY,
  D3DDP2OP_GENERATEMIPSUBLEVELS,
  D3DDP2OP_DELETEQUERY,
  D3DDP2OP_ISSUEQUERY,
  D3DDP2OP_SETPIXELSHADERCONSTI,
  D3DDP2OP_SETPIXELSHADERCONSTB,
  D3DDP2OP_SETSTREAMSOURCEFREQ,
  D3DDP2OP_SURFACEBLT,
  D3DDP2OP_SETCONVOLUTIONKERNELMONO,
  D3DDP2OP_COMPOSERECTS
} D3DHAL_DP2OPERATION;

Constantes

 
D3DDP2OP_POINTS
Desenha uma lista de pontos indexados ou não indexados. Cada lista é especificada por uma ou mais estruturas D3DHAL_DP2POINTS .
D3DDP2OP_INDEXEDLINELIST
Desenha uma lista de linhas, com cada linha especificada por um par de índices de vértice. A lista de linhas indexadas é especificada por uma ou mais estruturas D3DHAL_DP2INDEXEDLINELIST .
D3DDP2OP_INDEXEDTRIANGLELIST
Desenha uma lista de triângulos. Cada triângulo é especificado por três índices no buffer de vértice, um índice por vértice de triângulo. A lista de triângulos é especificada por uma ou mais estruturas D3DHAL_DP2INDEXEDTRIANGLELIST .
D3DDP2OP_RENDERSTATE
Especifica uma alteração de estado de renderização que requer processamento. O estado de renderização a ser alterado é especificado por uma ou mais estruturas D3DHAL_DP2RENDERSTATE .
D3DDP2OP_LINELIST
Desenha uma lista de linhas. Cada linha é especificada por um par de vértices. Os vértices são processados em ordem sequencial, começando em um índice de vértice especificado inicial. A lista de linhas é especificada por uma estrutura D3DHAL_DP2LINELIST .
D3DDP2OP_LINESTRIP
Desenha uma faixa de linhas conectada definida por uma sequência de vértices começando em um índice de vértice especificado inicial. A faixa de linha é especificada por uma estrutura D3DHAL_DP2LINESTRIP .
D3DDP2OP_INDEXEDLINESTRIP
Desenha uma faixa de linhas conectada definida por uma sequência de índices de vértice. Cada linha na faixa conectada é especificada por uma estrutura D3DHAL_DP2INDEXEDLINESTRIP .
D3DDP2OP_TRIANGLELIST
Desenha uma lista de triângulos. Cada triângulo é especificado por três vértices que são processados começando em um índice de vértice especificado inicial. Os triângulos são processados em ordem sequencial. A lista de triângulos é especificada por uma estrutura D3DHAL_DP2TRIANGLELIST .
D3DDP2OP_TRIANGLESTRIP
Desenha uma faixa conectada de triângulos. Cada triângulo é especificado por uma sequência de vértices começando em um índice de vértice especificado inicial. Os três vértices mais atuais são usados para desenhar cada triângulo. A faixa de triângulo é especificada por uma estrutura D3DHAL_DP2TRIANGLESTRIP .
D3DDP2OP_INDEXEDTRIANGLESTRIP
Desenha uma faixa conectada de triângulos que são especificados por uma sequência de índices de vértice. Os três índices de vértice mais atuais são usados para desenhar cada triângulo. Cada triângulo na faixa conectada é especificado por uma estrutura D3DHAL_DP2INDEXEDTRIANGLESTRIP .
D3DDP2OP_TRIANGLEFAN
Desenha um ventilador de triângulo. O ventilador é especificado por uma sequência de vértices que começam em um índice de vértice especificado inicial. O ventilador de triângulo é especificado por uma estrutura D3DHAL_DP2TRIANGLEFAN .
D3DDP2OP_INDEXEDTRIANGLEFAN
Desenha um ventilador de triângulo. O ventilador de triângulo é especificado por uma sequência de índices de vértice. Cada triângulo no ventilador é especificado por uma estrutura D3DHAL_DP2INDEXEDTRIANGLEFAN .
D3DDP2OP_TRIANGLEFAN_IMM
Desenha um ventilador de triângulo. O ventilador é especificado por uma sequência de vértices armazenados no fluxo de comandos (dados imediatos). O membro wPrimitiveCount da estrutura D3DHAL_DP2COMMAND especifica o número de triângulos a serem renderizados. O tipo e o tamanho dos vértices são especificados pelo membro dwVertexType da estrutura D3DHAL_DRAWPRIMITIVES2DATA .
D3DDP2OP_LINELIST_IMM
Desenha um conjunto de linhas. Cada linha é especificada por um par de vértices armazenados no fluxo de comando (dados imediatos). O membro wPrimitiveCount da estrutura D3DHAL_DP2COMMAND especifica quantos pares de vértices seguem. O tipo e o tamanho dos vértices são determinados pelo membro dwVertexType da estrutura D3DHAL_DRAWPRIMITIVES2DATA .
D3DDP2OP_TEXTURESTAGESTATE
Especifica uma alteração de estado de renderização de textura que requer processamento. O estado de renderização a ser alterado é especificado por uma ou mais estruturas D3DHAL_DP2TEXTURESTAGESTATE . O valor no membro TSState especifica o estado de textura a ser atualizado.
D3DDP2OP_INDEXEDTRIANGLELIST2
Desenha uma lista de triângulos. Cada triângulo é especificado por três índices no buffer de vértice, um índice por vértice de triângulo. A lista de triângulos é especificada por uma ou mais estruturas D3DHAL_DP2INDEXEDTRIANGLELIST2 .
D3DDP2OP_INDEXEDLINELIST2
Desenha uma lista de linhas. Cada linha é especificada por um par de índices de vértice, com cada deslocamento desde o início do buffer de vértice por um valor fixo. A lista de linhas indexadas é especificada por uma ou mais estruturas D3DHAL_DP2INDEXEDLINELIST .
D3DDP2OP_VIEWPORTINFO
Especifica o retângulo de recorte usado para recorte de faixa de proteção por drivers com reconhecimento de faixa de proteção. O retângulo de recorte (ou seja, o retângulo de exibição) é especificado pela estrutura D3DHAL_DP2VIEWPORTINFO .
D3DDP2OP_WINFO
Especifica o intervalo w para o buffer w. Esse intervalo é especificado por uma ou mais estruturas D3DHAL_DP2WINFO .
D3DDP2OP_SETPALETTE
Especifica que a paleta está sendo definida para uma textura. Consulte D3DHAL_DP2SETPALETTE.
D3DDP2OP_UPDATEPALETTE
Especifica que uma paleta de texturas deve ser atualizada. Consulte D3DHAL_DP2UPDATEPALETTE.
D3DDP2OP_ZRANGE
Especifica o intervalo de valores z. Consulte D3DHAL_DP2ZRANGE.
D3DDP2OP_SETMATERIAL
Define as propriedades de um material. D3DHAL_DP2SETMATERIAL é uma estrutura D3DMATERIAL7 (descrita na documentação do SDK do DirectX) usada para definir as propriedades do material.
D3DDP2OP_SETLIGHT
Especifica que uma luz está sendo definida. Confira D3DHAL_DP2SETLIGHT.
D3DDP2OP_CREATELIGHT
Cria uma luz. Confira D3DHAL_DP2CREATELIGHT.
D3DDP2OP_SETTRANSFORM
Configura uma transformação. Consulte D3DHAL_DP2SETTRANSFORM.
D3DDP2OP_TEXBLT
Especifica uma operação blt de uma textura de origem para uma textura de destino. Ele é usado como uma alternativa mais eficiente para a DDI DdBlt do DirectDraw. Ele é especificado por uma ou mais estruturas D3DHAL_DP2TEXBLT . Como os drivers Direct3D mantêm todo o estado necessário para fazer um blt (por exemplo, alças de textura e modos de mesclagem), um blt pode ser realizado apenas com as informações na D3DDP2OP_TEXBLT opcode. Esse novo token sinaliza ao driver que uma textura deve ser transferida da memória do sistema para a memória de vídeo local ou não local.
D3DDP2OP_STATESET
Especifica uma operação de conjunto de estado a ser executada. Confira D3DHAL_DP2STATESET.
D3DDP2OP_SETPRIORITY
Define a prioridade de uma textura gerenciada. Confira D3DHAL_DP2SETPRIORITY.
D3DDP2OP_SETRENDERTARGET
Define o destino de renderização. Os drivers Direct3D devem responder a esse opcode exatamente da mesma forma que com o retorno de chamada setRenderTarget mais antigo. Confira D3DHAL_DP2SETRENDERTARGET.
D3DDP2OP_CLEAR
Especifica uma operação clara. Substitui os retornos de chamada Clear e Clear2 . Confira D3DHAL_DP2CLEAR.
D3DDP2OP_SETTEXLOD
Indica que o lod (nível de detalhe) para mapas MIP está sendo definido. Consulte D3DHAL_DP2SETTEXLOD.
D3DDP2OP_SETCLIPPLANE
Especifica que um plano de clipe definido pelo usuário está sendo usado. Confira D3DHAL_DP2SETCLIPPLANE.
D3DDP2OP_CREATEVERTEXSHADER
D3DDP2OP_DELETEVERTEXSHADER
D3DDP2OP_SETVERTEXSHADER
D3DDP2OP_SETVERTEXSHADERCONST
D3DDP2OP_SETSTREAMSOURCE
D3DDP2OP_SETSTREAMSOURCEUM
D3DDP2OP_SETINDICES
D3DDP2OP_DRAWPRIMITIVE
D3DDP2OP_DRAWINDEXEDPRIMITIVE
D3DDP2OP_CREATEPIXELSHADER
D3DDP2OP_DELETEPIXELSHADER
D3DDP2OP_SETPIXELSHADER
D3DDP2OP_SETPIXELSHADERCONST
D3DDP2OP_CLIPPEDTRIANGLEFAN
Somente DirectX 8.0 e versões posteriores. Esse token é enviado ao driver para desenhar ventiladores de triângulos transformados e recortados. Esse token é uma substituição para os tokens DirectX 7.0 que usavam vértices embutidos no fluxo de comandos. Os ventiladores de triângulo são especificados por uma ou mais estruturas D3DHAL_CLIPPEDTRIANGLEFAN .
D3DDP2OP_DRAWPRIMITIVE2
D3DDP2OP_DRAWINDEXEDPRIMITIVE2
D3DDP2OP_DRAWRECTPATCH
D3DDP2OP_DRAWTRIPATCH
D3DDP2OP_VOLUMEBLT
Dá suporte à cópia e à atualização ideais de texturas de volume. Esse token é muito semelhante ao D3DDP2OP_TEXBLT existente que copia e atualiza texturas, mas foi estendido para dar suporte à cópia de subvolume (caixa) em vez de retângulos simples.
D3DDP2OP_BUFFERBLT
D3DDP2OP_MULTIPLYTRANSFORM
Somente DirectX 8.0 e versões posteriores. Multiplica uma transformação atual. Confira D3DHAL_DP2MULTIPLYTRANSFORM.
D3DDP2OP_ADDDIRTYRECT
D3DDP2OP_ADDDIRTYBOX
D3DDP2OP_CREATEVERTEXSHADERDECL
D3DDP2OP_DELETEVERTEXSHADERDECL
D3DDP2OP_SETVERTEXSHADERDECL
D3DDP2OP_CREATEVERTEXSHADERFUNC
D3DDP2OP_DELETEVERTEXSHADERFUNC
D3DDP2OP_SETVERTEXSHADERFUNC
D3DDP2OP_SETVERTEXSHADERCONSTI
D3DDP2OP_SETSCISSORRECT
D3DDP2OP_SETSTREAMSOURCE2
D3DDP2OP_BLT
D3DDP2OP_COLORFILL
D3DDP2OP_SETVERTEXSHADERCONSTB
D3DDP2OP_CREATEQUERY
D3DDP2OP_SETRENDERTARGET2
D3DDP2OP_SETDEPTHSTENCIL
D3DDP2OP_RESPONSECONTINUE
D3DDP2OP_RESPONSEQUERY
D3DDP2OP_GENERATEMIPSUBLEVELS
D3DDP2OP_DELETEQUERY
D3DDP2OP_ISSUEQUERY
D3DDP2OP_SETPIXELSHADERCONSTI
D3DDP2OP_SETPIXELSHADERCONSTB
D3DDP2OP_SETSTREAMSOURCEFREQ
D3DDP2OP_SURFACEBLT
D3DDP2OP_SETCONVOLUTIONKERNELMONO
D3DDP2OP_COMPOSERECTS

Comentários

Observe que, como os enumeradores D3DNTDP2OP_XXX são definidos como D3DDP2OP_XXX internamente no arquivo Dx95type.h do WDK (Kit de Driver do Windows), o formulário mais curto é usado aqui para maior clareza. Qualquer formulário é válido no Windows 2000 e em implementações posteriores, mas somente o formulário mais curto pode ser usado no Windows 98/Me.

O tipo enumerado D3DNTHAL_DP2OPERATION é definido como o tipo D3DHAL_DP2OPERATION enumerado no arquivo Dx95type.h . O tipo enumerado posterior (forma mais curta) é usado aqui para maior clareza. Qualquer formulário é válido no Windows 2000 e em implementações posteriores, mas somente o formulário mais curto pode ser usado no Windows 98/Me.

Requisitos

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