enumerazione D3DHAL_DP2OPERATION (d3dhal.h)

Il tipo enumerato D3DHAL_DP2OPERATION specifica l'operazione D3dDrawPrimitives2 nel membro bCommand della struttura D3DHAL_DP2COMMAND . Gli enumeratori di D3DHAL_DP2OPERATION possono specificare operazioni di rendering primitivo o nonprimitive.The enumerators of D3DHAL_DP2OPERATION can specify either primitive-rendering or nonprimitive-rendering operations. Gli enumeratori di D3DHAL_DP2OPERATION possono anche specificare che il driver ha restituito risposte alle query eseguite in precedenza.

Sintassi

typedef enum _D3DHAL_DP2OPERATION {
  D3DDP2OP_POINTS,
  D3DDP2OP_INDEXEDLINELIST,
  D3DDP2OP_INDEXEDTRIANGLELIST,
  D3DDP2OP_RENDERSTATE,
  D3DDP2OP_LINELIST,
  D3DDP2OP_LINESTRIP,
  D3DDP2OP_INDEXEDLINESTRIP,
  D3DDP2OP_TRIANGLELIST,
  D3DDP2OP_TRIANGLESTRIP,
  D3DDP2OP_INDEXEDTRIANGLESTRIP,
  D3DDP2OP_TRIANGLEFAN,
  D3DDP2OP_INDEXEDTRIANGLEFAN,
  D3DDP2OP_TRIANGLEFAN_IMM,
  D3DDP2OP_LINELIST_IMM,
  D3DDP2OP_TEXTURESTAGESTATE,
  D3DDP2OP_INDEXEDTRIANGLELIST2,
  D3DDP2OP_INDEXEDLINELIST2,
  D3DDP2OP_VIEWPORTINFO,
  D3DDP2OP_WINFO,
  D3DDP2OP_SETPALETTE,
  D3DDP2OP_UPDATEPALETTE,
  D3DDP2OP_ZRANGE,
  D3DDP2OP_SETMATERIAL,
  D3DDP2OP_SETLIGHT,
  D3DDP2OP_CREATELIGHT,
  D3DDP2OP_SETTRANSFORM,
  D3DDP2OP_TEXBLT,
  D3DDP2OP_STATESET,
  D3DDP2OP_SETPRIORITY,
  D3DDP2OP_SETRENDERTARGET,
  D3DDP2OP_CLEAR,
  D3DDP2OP_SETTEXLOD,
  D3DDP2OP_SETCLIPPLANE,
  D3DDP2OP_CREATEVERTEXSHADER,
  D3DDP2OP_DELETEVERTEXSHADER,
  D3DDP2OP_SETVERTEXSHADER,
  D3DDP2OP_SETVERTEXSHADERCONST,
  D3DDP2OP_SETSTREAMSOURCE,
  D3DDP2OP_SETSTREAMSOURCEUM,
  D3DDP2OP_SETINDICES,
  D3DDP2OP_DRAWPRIMITIVE,
  D3DDP2OP_DRAWINDEXEDPRIMITIVE,
  D3DDP2OP_CREATEPIXELSHADER,
  D3DDP2OP_DELETEPIXELSHADER,
  D3DDP2OP_SETPIXELSHADER,
  D3DDP2OP_SETPIXELSHADERCONST,
  D3DDP2OP_CLIPPEDTRIANGLEFAN,
  D3DDP2OP_DRAWPRIMITIVE2,
  D3DDP2OP_DRAWINDEXEDPRIMITIVE2,
  D3DDP2OP_DRAWRECTPATCH,
  D3DDP2OP_DRAWTRIPATCH,
  D3DDP2OP_VOLUMEBLT,
  D3DDP2OP_BUFFERBLT,
  D3DDP2OP_MULTIPLYTRANSFORM,
  D3DDP2OP_ADDDIRTYRECT,
  D3DDP2OP_ADDDIRTYBOX,
  D3DDP2OP_CREATEVERTEXSHADERDECL,
  D3DDP2OP_DELETEVERTEXSHADERDECL,
  D3DDP2OP_SETVERTEXSHADERDECL,
  D3DDP2OP_CREATEVERTEXSHADERFUNC,
  D3DDP2OP_DELETEVERTEXSHADERFUNC,
  D3DDP2OP_SETVERTEXSHADERFUNC,
  D3DDP2OP_SETVERTEXSHADERCONSTI,
  D3DDP2OP_SETSCISSORRECT,
  D3DDP2OP_SETSTREAMSOURCE2,
  D3DDP2OP_BLT,
  D3DDP2OP_COLORFILL,
  D3DDP2OP_SETVERTEXSHADERCONSTB,
  D3DDP2OP_CREATEQUERY,
  D3DDP2OP_SETRENDERTARGET2,
  D3DDP2OP_SETDEPTHSTENCIL,
  D3DDP2OP_RESPONSECONTINUE,
  D3DDP2OP_RESPONSEQUERY,
  D3DDP2OP_GENERATEMIPSUBLEVELS,
  D3DDP2OP_DELETEQUERY,
  D3DDP2OP_ISSUEQUERY,
  D3DDP2OP_SETPIXELSHADERCONSTI,
  D3DDP2OP_SETPIXELSHADERCONSTB,
  D3DDP2OP_SETSTREAMSOURCEFREQ,
  D3DDP2OP_SURFACEBLT,
  D3DDP2OP_SETCONVOLUTIONKERNELMONO,
  D3DDP2OP_COMPOSERECTS
} D3DHAL_DP2OPERATION;

Costanti

 
D3DDP2OP_POINTS
Disegna un elenco di punti indicizzati o non indicizzati. Ogni elenco viene specificato da una o più strutture D3DHAL_DP2POINTS .
D3DDP2OP_INDEXEDLINELIST
Disegna un elenco di righe, con ogni riga specificata da una coppia di indici dei vertici. L'elenco di righe indicizzate viene specificato da una o più strutture D3DHAL_DP2INDEXEDLINELIST .
D3DDP2OP_INDEXEDTRIANGLELIST
Disegna un elenco di triangoli. Ogni triangolo viene specificato da tre indici nel buffer dei vertici, un indice per vertice di triangolo. L'elenco di triangoli viene specificato da una o più strutture D3DHAL_DP2INDEXEDTRIANGLELIST .
D3DDP2OP_RENDERSTATE
Specifica una modifica dello stato di rendering che richiede l'elaborazione. Lo stato di rendering da modificare viene specificato da una o più strutture D3DHAL_DP2RENDERSTATE .
D3DDP2OP_LINELIST
Disegna un elenco di righe. Ogni riga viene specificata da una coppia di vertici. I vertici vengono elaborati in ordine sequenziale a partire da un indice vertice specificato iniziale. L'elenco di righe viene specificato da una struttura D3DHAL_DP2LINELIST .
D3DDP2OP_LINESTRIP
Disegna una striscia connessa di linee definite da una sequenza di vertici a partire da un indice vertice specificato iniziale. La striscia di linea viene specificata da una struttura D3DHAL_DP2LINESTRIP .
D3DDP2OP_INDEXEDLINESTRIP
Disegna una striscia connessa di linee definite da una sequenza di indici dei vertici. Ogni riga della striscia connessa viene specificata da una struttura D3DHAL_DP2INDEXEDLINESTRIP .
D3DDP2OP_TRIANGLELIST
Disegna un elenco di triangoli. Ogni triangolo viene specificato da tre vertici elaborati a partire da un indice vertice specificato iniziale. I triangoli vengono elaborati in ordine sequenziale. L'elenco di triangoli viene specificato da una struttura D3DHAL_DP2TRIANGLELIST .
D3DDP2OP_TRIANGLESTRIP
Disegna una striscia di triangoli connessa. Ogni triangolo viene specificato da una sequenza di vertici a partire da un indice vertice specificato iniziale. I tre vertici più correnti vengono usati per disegnare ogni triangolo. La striscia di triangoli viene specificata da una struttura D3DHAL_DP2TRIANGLESTRIP .
D3DDP2OP_INDEXEDTRIANGLESTRIP
Disegna una striscia di triangoli connessa specificata da una sequenza di indici dei vertici. I tre indici dei vertici più aggiornati vengono usati per disegnare ogni triangolo. Ogni triangolo nella striscia connessa viene specificato da una struttura D3DHAL_DP2INDEXEDTRIANGLESTRIP .
D3DDP2OP_TRIANGLEFAN
Disegna una ventola triangolare. La ventola viene specificata da una sequenza di vertici che iniziano in corrispondenza di un indice vertice specificato iniziale. La ventola del triangolo viene specificata da una struttura D3DHAL_DP2TRIANGLEFAN .
D3DDP2OP_INDEXEDTRIANGLEFAN
Disegna una ventola triangolare. La ventola del triangolo viene specificata da una sequenza di indici dei vertici. Ogni triangolo nella ventola viene specificato da una struttura D3DHAL_DP2INDEXEDTRIANGLEFAN .
D3DDP2OP_TRIANGLEFAN_IMM
Disegna una ventola triangolare. La ventola viene specificata da una sequenza di vertici archiviati nel flusso di comandi (dati immediati). Il membro wPrimitiveCount della struttura D3DHAL_DP2COMMAND specifica il numero di triangoli da eseguire per il rendering. Il tipo e le dimensioni dei vertici vengono specificati dal membro dwVertexType della struttura D3DHAL_DRAWPRIMITIVES2DATA .
D3DDP2OP_LINELIST_IMM
Disegna un set di linee. Ogni riga viene specificata da una coppia di vertici archiviati nel flusso di comandi (dati immediati). Il membro wPrimitiveCount della struttura D3DHAL_DP2COMMAND specifica il numero di coppie di vertici seguenti. Il tipo e le dimensioni dei vertici sono determinati dal membro dwVertexType della struttura D3DHAL_DRAWPRIMITIVES2DATA .
D3DDP2OP_TEXTURESTAGESTATE
Specifica una modifica dello stato di rendering della trama che richiede l'elaborazione. Lo stato di rendering da modificare viene specificato da una o più strutture D3DHAL_DP2TEXTURESTAGESTATE . Il valore nel membro TSState specifica lo stato della trama da aggiornare.
D3DDP2OP_INDEXEDTRIANGLELIST2
Disegna un elenco di triangoli. Ogni triangolo viene specificato da tre indici nel buffer dei vertici, un indice per vertice di triangolo. L'elenco di triangoli viene specificato da una o più strutture D3DHAL_DP2INDEXEDTRIANGLELIST2 .
D3DDP2OP_INDEXEDLINELIST2
Disegna un elenco di righe. Ogni riga viene specificata da una coppia di indici dei vertici, con ogni offset dall'inizio del vertex buffer in base a una quantità fissa. L'elenco di righe indicizzate viene specificato da una o più strutture D3DHAL_DP2INDEXEDLINELIST .
D3DDP2OP_VIEWPORTINFO
Specifica il rettangolo di ritaglio utilizzato per il ritaglio della banda di protezione da parte dei driver con riconoscimento della banda di protezione. Il rettangolo di ritaglio (ovvero il rettangolo di visualizzazione) viene specificato dalla struttura D3DHAL_DP2VIEWPORTINFO .
D3DDP2OP_WINFO
Specifica l'intervallo w per w buffering. Questo intervallo viene specificato da una o più strutture D3DHAL_DP2WINFO .
D3DDP2OP_SETPALETTE
Specifica che la tavolozza viene impostata per una trama. Vedere D3DHAL_DP2SETPALETTE.
D3DDP2OP_UPDATEPALETTE
Specifica che deve essere aggiornata una tavolozza delle trame. Vedere D3DHAL_DP2UPDATEPALETTE.
D3DDP2OP_ZRANGE
Specifica l'intervallo di valori z. Vedere D3DHAL_DP2ZRANGE.
D3DDP2OP_SETMATERIAL
Imposta le proprietà di un materiale. D3DHAL_DP2SETMATERIAL è una struttura D3DMATERIAL7 (descritta nella documentazione di DirectX SDK) usata per impostare le proprietà del materiale.
D3DDP2OP_SETLIGHT
Specifica che viene impostata una luce. Vedere D3DHAL_DP2SETLIGHT.
D3DDP2OP_CREATELIGHT
Crea una luce. Vedere D3DHAL_DP2CREATELIGHT.
D3DDP2OP_SETTRANSFORM
Configura una trasformazione. Vedere D3DHAL_DP2SETTRANSFORM.
D3DDP2OP_TEXBLT
Specifica un'operazione blt da una trama di origine a una trama di destinazione. Viene usato come alternativa più efficiente all'DDI DdBlt DirectDraw . Viene specificato da una o più strutture D3DHAL_DP2TEXBLT . Poiché i driver Direct3D mantengono tutto lo stato necessario per eseguire un blt (ad esempio, handle di trama e modalità di fusione), è possibile eseguire una copia blt con solo le informazioni contenute nel codice operativo D3DDP2OP_TEXBLT. Questo nuovo token segnala al driver che una trama deve essere trasferita dalla memoria di sistema alla memoria video locale o non locale.
D3DDP2OP_STATESET
Specifica un'operazione di set di stato da eseguire. Vedere D3DHAL_DP2STATESET.
D3DDP2OP_SETPRIORITY
Imposta la priorità di una trama gestita. Vedere D3DHAL_DP2SETPRIORITY.
D3DDP2OP_SETRENDERTARGET
Imposta la destinazione di rendering. I driver Direct3D devono rispondere a questo codice operativo esattamente come con il callback SetRenderTarget precedente. Vedere D3DHAL_DP2SETRENDERTARGET.
D3DDP2OP_CLEAR
Specifica un'operazione non crittografata. Sostituisce i callback Clear e Clear2 . Vedere D3DHAL_DP2CLEAR.
D3DDP2OP_SETTEXLOD
Indica che è in corso l'impostazione del livello di dettaglio (LOD) per le mappe MIP. Vedere D3DHAL_DP2SETTEXLOD.
D3DDP2OP_SETCLIPPLANE
Specifica che viene utilizzato un piano clip definito dall'utente. Vedere D3DHAL_DP2SETCLIPPLANE.
D3DDP2OP_CREATEVERTEXSHADER
D3DDP2OP_DELETEVERTEXSHADER
D3DDP2OP_SETVERTEXSHADER
D3DDP2OP_SETVERTEXSHADERCONST
D3DDP2OP_SETSTREAMSOURCE
D3DDP2OP_SETSTREAMSOURCEUM
D3DDP2OP_SETINDICES
D3DDP2OP_DRAWPRIMITIVE
D3DDP2OP_DRAWINDEXEDPRIMITIVE
D3DDP2OP_CREATEPIXELSHADER
D3DDP2OP_DELETEPIXELSHADER
D3DDP2OP_SETPIXELSHADER
D3DDP2OP_SETPIXELSHADERCONST
D3DDP2OP_CLIPPEDTRIANGLEFAN
Solo DirectX 8.0 e versioni successive. Questo token viene inviato al driver per disegnare ventole di triangoli trasformate e ritagliate. Questo token è una sostituzione per i token DirectX 7.0 che usano vertici inline nel flusso di comando. Le ventole dei triangoli vengono specificate da una o più strutture D3DHAL_CLIPPEDTRIANGLEFAN .
D3DDP2OP_DRAWPRIMITIVE2
D3DDP2OP_DRAWINDEXEDPRIMITIVE2
D3DDP2OP_DRAWRECTPATCH
D3DDP2OP_DRAWTRIPATCH
D3DDP2OP_VOLUMEBLT
Supporta la copia e l'aggiornamento ottimali delle trame del volume. Questo token è molto simile al D3DDP2OP_TEXBLT esistente che copia e aggiorna le trame, ma è stato esteso per supportare la copia secondaria (casella) anziché i rettangoli semplici.
D3DDP2OP_BUFFERBLT
D3DDP2OP_MULTIPLYTRANSFORM
Solo DirectX 8.0 e versioni successive. Moltiplica una trasformazione corrente. Vedere D3DHAL_DP2MULTIPLYTRANSFORM.
D3DDP2OP_ADDDIRTYRECT
D3DDP2OP_ADDDIRTYBOX
D3DDP2OP_CREATEVERTEXSHADERDECL
D3DDP2OP_DELETEVERTEXSHADERDECL
D3DDP2OP_SETVERTEXSHADERDECL
D3DDP2OP_CREATEVERTEXSHADERFUNC
D3DDP2OP_DELETEVERTEXSHADERFUNC
D3DDP2OP_SETVERTEXSHADERFUNC
D3DDP2OP_SETVERTEXSHADERCONSTI
D3DDP2OP_SETSCISSORRECT
D3DDP2OP_SETSTREAMSOURCE2
D3DDP2OP_BLT
D3DDP2OP_COLORFILL
D3DDP2OP_SETVERTEXSHADERCONSTB
D3DDP2OP_CREATEQUERY
D3DDP2OP_SETRENDERTARGET2
D3DDP2OP_SETDEPTHSTENCIL
D3DDP2OP_RESPONSECONTINUE
D3DDP2OP_RESPONSEQUERY
D3DDP2OP_GENERATEMIPSUBLEVELS
D3DDP2OP_DELETEQUERY
D3DDP2OP_ISSUEQUERY
D3DDP2OP_SETPIXELSHADERCONSTI
D3DDP2OP_SETPIXELSHADERCONSTB
D3DDP2OP_SETSTREAMSOURCEFREQ
D3DDP2OP_SURFACEBLT
D3DDP2OP_SETCONVOLUTIONKERNELMONO
D3DDP2OP_COMPOSERECTS

Commenti

Si noti che poiché gli enumeratori D3DNTDP2OP_XXX sono di tipo definiti come D3DDP2OP_XXX internamente nel file Dx95type.h di Windows Driver Kit (WDK), il formato più breve viene usato qui per maggiore chiarezza. Entrambi i moduli sono validi nelle implementazioni di Windows 2000 e versioni successive, ma solo il modulo più breve può essere usato in Windows 98/Me.

Il tipo enumerato D3DNTHAL_DP2OPERATION è definito come tipo enumerato D3DHAL_DP2OPERATION nel file Dx95type.h . Il tipo enumerato successivo (formato più breve) viene usato qui per maggiore chiarezza. Entrambi i moduli sono validi nelle implementazioni di Windows 2000 e versioni successive, ma solo il modulo più breve può essere usato in Windows 98/Me.

Requisiti

Requisito Valore
Intestazione d3dhal.h (include D3dhal.h)