Metodo IDirect3DDevice9::P rocessVertices (d3d9.h)
Applica l'elaborazione del vertice definita dal vertex shader al set di flussi di dati di input, generando un singolo flusso di dati dei vertici interleaved al buffer del vertice 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 del vertice 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 del vertice 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 del vertice di output. Quando vertex shader 3.0 o versioni successive è 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 del vertice 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 è 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 di proiezione world + view + projection.
- Coordinate dello schermo di calcolo usando le impostazioni del riquadro di visualizzazione.
- Se il ritaglio è abilitato, calcolare i codici di clipping e archiviarli in un buffer interno, associato al buffer del vertice 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 buffer del vertice di destinazione nelle coordinate dello spazio di proiezione.
- Altre note: l'utente non ha accesso al buffer del codice clip interno. Nessun ritaglio viene eseguito 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 della coordinata della trama di output definisce più componenti delle coordinate della trama rispetto a Direct3D genera, Direct3D non modifica questi componenti aggiuntivi.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d9.h (includere D3D9.h) |
Libreria | D3D9.lib |
Vedi anche
Requisiti di elaborazione dei dispositivi e dei vertici (Direct3D 9)