Metodo IDirect3DDevice9::D rawPrimitiveUP (d3d9.h)
Esegue il rendering dei dati specificati da un puntatore alla memoria utente come sequenza di primitive geometriche del tipo specificato.
Sintassi
HRESULT DrawPrimitiveUP(
[in] D3DPRIMITIVETYPE PrimitiveType,
[in] UINT PrimitiveCount,
[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] 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 .
[in] pVertexStreamZeroData
Tipo: const void*
Puntatore alla memoria utente ai dati del vertice.
[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: 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. L'effetto di questa chiamata consiste nell'usare il puntatore dati del vertice fornito e lo stride per il flusso vertex 0. Non è valido avere la dichiarazione del vertex shader corrente fare riferimento a flussi di vertice diversi dal flusso 0.
Dopo qualsiasi chiamata IDirect3DDevice9::D rawPrimitiveUP , le impostazioni di flusso 0, a cui fa riferimento IDirect3DDevice9::GetStreamSource, sono impostate su NULL.
I dati dei vertici passati a IDirect3DDevice9::D rawPrimitiveUP 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
Piattaforma di destinazione | Windows |
Intestazione | d3d9.h (includere D3D9.h) |
Libreria | D3D9.lib |