Metodo IDirect3DDevice9::P rocessVertices (d3d9helper.h)
Applica l'elaborazione dei vertici definita dal vertex shader al set di flussi di dati di input, generando un singolo flusso di dati dei vertici interleaved nel buffer dei vertici di destinazione.
Sintassi
HRESULT ProcessVertices(
[in] UINT SrcStartIndex,
[in] UINT DestIndex,
[in] UINT VertexCount,
[in] IDirect3DVertexBuffer9 *pDestBuffer,
[in] IDirect3DVertexDeclaration9 *pVertexDecl,
[in] DWORD Flags
);
Parametri
[in] SrcStartIndex
Tipo: UINT
Indice del primo vertice da caricare.
[in] DestIndex
Tipo: UINT
Indice del primo vertice nel buffer dei vertici di destinazione in cui vengono inseriti i risultati.
[in] VertexCount
Tipo: UINT
Numero di vertici da elaborare.
[in] pDestBuffer
Tipo: IDirect3DVertexBuffer9*
Puntatore a un'interfaccia IDirect3DVertexBuffer9 , il buffer dei vertici di destinazione che rappresenta il flusso di dati dei vertici interleaved.
[in] pVertexDecl
Tipo: IDirect3DVertexDeclaration9*
Puntatore a un'interfaccia IDirect3DVertexDeclaration9 che rappresenta la dichiarazione dei dati dei vertici di output. Quando vertex shader 3.0 o versione successiva viene impostato come vertex shader corrente, la dichiarazione del vertice di output deve essere presente.
[in] Flags
Tipo: DWORD
Opzioni di elaborazione. Impostare questo parametro su 0 per l'elaborazione predefinita. Impostare su D3DPV_DONOTCOPYDATA per impedire al sistema di copiare i dati dei vertici non interessati dall'operazione dei vertici nel buffer di destinazione. Il valore D3DPV_DONOTCOPYDATA può essere combinato con uno o più valori D3DLOCK appropriati per il buffer di destinazione.
Valore restituito
Tipo: HRESULT
Se il metodo ha esito positivo, il valore restituito viene D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere D3DERR_INVALIDCALL.
Commenti
L'ordine delle operazioni per questo metodo è il seguente:
- Trasformare i vertici nello spazio di proiezione usando la matrice mondo + visualizzazione + proiezione.
- Coordinate dello schermo di calcolo usando le impostazioni del riquadro di visualizzazione.
- Se il ritaglio è abilitato, calcolare i codici di ritaglio e archiviarli in un buffer interno, associato al buffer dei vertici di destinazione. Se un vertice si trova all'interno del frustum di visualizzazione, vengono calcolate le coordinate dello schermo. Se il vertice si trova all'esterno del frustum di visualizzazione, il vertice viene archiviato nel vertex buffer di destinazione nelle coordinate dello spazio di proiezione.
- Altre note: l'utente non ha accesso al buffer del codice clip interno. Non viene eseguito alcun ritaglio su triangoli o su qualsiasi altra primitiva.
Quando Direct3D genera coordinate di trama o copia o trasforma le coordinate della trama di input e il formato delle coordinate della trama di output definisce più componenti di coordinate della trama rispetto a Direct3D generati, Direct3D non modifica questi componenti aggiuntivi.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d9helper.h (include D3D9.h) |
Libreria | D3D9.lib |
Vedi anche
Tipi di dispositivi e requisiti di elaborazione dei vertici (Direct3D 9)