Condividi tramite


Metodo IDirect3DDevice9::D rawIndexedPrimitiveUP (d3d9helper.h)

Esegue il rendering della primitiva geometrica specificata con i dati specificati da un puntatore alla memoria utente.

Sintassi

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
);

Parametri

[in] PrimitiveType

Tipo: D3DPRIMITIVETYPE

Membro del tipo enumerato D3DPRIMITIVETYPE , che descrive il tipo di primitiva da eseguire per il rendering.

[in] MinVertexIndex

Tipo: UINT

Indice del vertice minimo. Si tratta di un indice in base zero.

[in] NumVertices

Tipo: UINT

Numero di vertici usati durante questa chiamata. Il primo vertice si trova all'indice: MinVertexIndex.

[in] PrimitiveCount

Tipo: UINT

Numero di primitive da eseguire per il rendering. Il numero massimo di primitive consentite è determinato controllando il membro MaxPrimitiveCount della struttura D3DCAPS9 (il numero di indici è una funzione del conteggio primitivo e del tipo primitivo).

[in] pIndexData

Tipo: const void*

Puntatore alla memoria utente ai dati dell'indice.

[in] IndexDataFormat

Tipo: D3DFORMAT

Membro del tipo enumerato D3DFORMAT , che descrive il formato dei dati dell'indice. Le impostazioni valide sono:

[in] pVertexStreamZeroData

Tipo: const void*

Puntatore alla memoria utente ai dati del vertice. I dati del vertice devono essere in flusso 0.

[in] VertexStreamZeroStride

Tipo: UINT

Numero di byte di dati per ogni vertice. Questo valore potrebbe non essere 0.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, il valore restituito è D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere il seguente: D3DERR_INVALIDCALL.

Commenti

Questo metodo è destinato all'uso nelle applicazioni che non sono in grado di archiviare i dati dei vertici nei buffer dei vertici. Questo metodo supporta solo un singolo flusso di vertici, che deve essere dichiarato come flusso 0.

Dopo qualsiasi chiamata IDirect3DDevice9::D rawIndexedPrimitiveUP , le impostazioni di flusso 0, a cui fa riferimento IDirect3DDevice9::GetStreamSource, sono impostate su NULL. Inoltre, l'impostazione del buffer di indice per IDirect3DDevice9::SetIndices è impostata su NULL.

I dati dei vertici passati a IDirect3DDevice9::D rawIndexedPrimitiveUP non devono essere persistenti dopo la chiamata. Direct3D completa l'accesso a tali dati prima di restituire dalla chiamata.

Quando si converte un'applicazione legacy in Direct3D 9, è necessario aggiungere una chiamata a IDirect3DDevice9::SetFVF per usare la pipeline della funzione fissa o IDirect3DDevice9::SetVertexDeclaration per usare un vertex shader prima di effettuare chiamate Draw.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione d3d9helper.h (include D3D9.h)
Libreria D3D9.lib

Vedi anche

IDirect3DDevice9

IDirect3DDevice9::D rawPrimitive

Rendering da vertex e buffer di indice (Direct3D 9)