Compartilhar via


Método IDirect3DDevice9::D rawIndexedPrimitiveUP (d3d9.h)

Renderiza o primitivo geométrico especificado com dados especificados por um ponteiro de memória do usuário.

Sintaxe

HRESULT DrawIndexedPrimitiveUP(
  [in] D3DPRIMITIVETYPE PrimitiveType,
  [in] UINT             MinVertexIndex,
  [in] UINT             NumVertices,
  [in] UINT             PrimitiveCount,
  [in] const void       *pIndexData,
  [in] D3DFORMAT        IndexDataFormat,
  [in] const void       *pVertexStreamZeroData,
  [in] UINT             VertexStreamZeroStride
);

Parâmetros

[in] PrimitiveType

Tipo: D3DPRIMITIVETYPE

Membro do D3DPRIMITIVETYPE tipo enumerado, descrevendo o tipo de primitivo a ser renderizado.

[in] MinVertexIndex

Tipo: UINT

Índice de vértice mínimo. Este é um índice baseado em zero.

[in] NumVertices

Tipo: UINT

Número de vértices usados durante essa chamada. O primeiro vértice está localizado no índice: MinVertexIndex.

[in] PrimitiveCount

Tipo: UINT

Número de primitivos a serem renderizados. O número máximo de primitivos permitido é determinado pela verificação do membro MaxPrimitiveCount da estrutura D3DCAPS9 (o número de índices é uma função da contagem primitiva e do tipo primitivo).

[in] pIndexData

Tipo: const void*

Ponteiro de memória do usuário para os dados de índice.

[in] IndexDataFormat

Tipo: D3DFORMAT

Membro do D3DFORMAT tipo enumerado, descrevendo o formato dos dados de índice. As configurações válidas são:

[in] pVertexStreamZeroData

Tipo: const void*

Ponteiro de memória do usuário para os dados de vértice. Os dados de vértice devem estar no fluxo 0.

[in] VertexStreamZeroStride

Tipo: UINT

O número de bytes de dados para cada vértice. Esse valor pode não ser 0.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, o valor retornado será D3D_OK. Se o método falhar, o valor retornado poderá ser o seguinte: D3DERR_INVALIDCALL.

Comentários

Esse método destina-se ao uso em aplicativos que não podem armazenar seus dados de vértice em buffers de vértice. Esse método dá suporte apenas a um único fluxo de vértice, que deve ser declarado como fluxo 0.

Seguindo qualquer chamada IDirect3DDevice9::D rawIndexedPrimitiveUP , as configurações de fluxo 0, referenciadas por IDirect3DDevice9::GetStreamSource, são definidas como NULL. Além disso, a configuração do buffer de índice para IDirect3DDevice9::SetIndices é definida como NULL.

Os dados de vértice passados para IDirect3DDevice9::D rawIndexedPrimitiveUP não precisam persistir após a chamada. O Direct3D conclui seu acesso a esses dados antes de retornar da chamada.

Ao converter um aplicativo herdado em Direct3D 9, você deve adicionar uma chamada a IDirect3DDevice9::SetFVF para usar o pipeline de função fixa ou IDirect3DDevice9::SetVertexDeclaration para usar um sombreador de vértice antes de fazer chamadas draw.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d9.h (inclua D3D9.h)
Biblioteca D3D9.lib

Confira também

IDirect3DDevice9

IDirect3DDevice9::DrawPrimitive

Renderização de buffers de vértice e índice (Direct3D 9)