énumération D3DHAL_DP2OPERATION (d3dhal.h)

Le D3DHAL_DP2OPERATION type énuméré spécifie l’opération D3dDrawPrimitives2 dans le membre bCommand de la structure D3DHAL_DP2COMMAND . Les énumérateurs de D3DHAL_DP2OPERATION peuvent spécifier des opérations de rendu primitif ou de rendu non primaire. Les énumérateurs de D3DHAL_DP2OPERATION peuvent également spécifier que le pilote a retourné des réponses aux requêtes précédemment émises.

Syntax

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;

Constantes

 
D3DDP2OP_POINTS
Dessine une liste de points indexés ou non indexés. Chaque liste est spécifiée par une ou plusieurs structures D3DHAL_DP2POINTS .
D3DDP2OP_INDEXEDLINELIST
Dessine une liste de lignes, avec chaque ligne spécifiée par une paire d’index de vertex. La liste de lignes indexées est spécifiée par une ou plusieurs structures D3DHAL_DP2INDEXEDLINELIST .
D3DDP2OP_INDEXEDTRIANGLELIST
Dessine une liste de triangles. Chaque triangle est spécifié par trois index dans la mémoire tampon de vertex, un index par sommet triangle. La liste de triangles est spécifiée par une ou plusieurs structures D3DHAL_DP2INDEXEDTRIANGLELIST .
D3DDP2OP_RENDERSTATE
Spécifie un changement d’état de rendu qui nécessite un traitement. L’état de rendu à modifier est spécifié par une ou plusieurs structures D3DHAL_DP2RENDERSTATE .
D3DDP2OP_LINELIST
Dessine une liste de lignes. Chaque ligne est spécifiée par une paire de sommets. Les sommets sont traités dans l’ordre séquentiel à partir d’un index de vertex spécifié initial. La liste de lignes est spécifiée par une structure D3DHAL_DP2LINELIST .
D3DDP2OP_LINESTRIP
Dessine une bande de lignes connectée définie par une séquence de sommets commençant à un index de vertex spécifié initial. La bande de ligne est spécifiée par une structure D3DHAL_DP2LINESTRIP .
D3DDP2OP_INDEXEDLINESTRIP
Dessine une bande de lignes connectée définie par une séquence d’index de vertex. Chaque ligne de la bande connectée est spécifiée par une structure D3DHAL_DP2INDEXEDLINESTRIP .
D3DDP2OP_TRIANGLELIST
Dessine une liste de triangles. Chaque triangle est spécifié par trois sommets qui sont traités à partir d’un index de vertex spécifié initial. Les triangles sont traités dans l’ordre séquentiel. La liste de triangles est spécifiée par une structure D3DHAL_DP2TRIANGLELIST .
D3DDP2OP_TRIANGLESTRIP
Dessine une bande connectée de triangles. Chaque triangle est spécifié par une séquence de sommets commençant à un index de vertex spécifié initial. Les trois sommets les plus actuels sont utilisés pour dessiner chaque triangle. La bande de triangle est spécifiée par une structure D3DHAL_DP2TRIANGLESTRIP .
D3DDP2OP_INDEXEDTRIANGLESTRIP
Dessine une bande connectée de triangles qui sont spécifiés par une séquence d’index de vertex. Les trois index de vertex les plus actuels sont utilisés pour dessiner chaque triangle. Chaque triangle de la bande connectée est spécifié par une structure D3DHAL_DP2INDEXEDTRIANGLESTRIP .
D3DDP2OP_TRIANGLEFAN
Dessine un ventilateur triangle. Le ventilateur est spécifié par une séquence de sommets qui commencent à un index de vertex spécifié initial. Le ventilateur triangle est spécifié par une structure D3DHAL_DP2TRIANGLEFAN .
D3DDP2OP_INDEXEDTRIANGLEFAN
Dessine un ventilateur triangle. Le ventilateur de triangle est spécifié par une séquence d’index de vertex. Chaque triangle du ventilateur est spécifié par une structure D3DHAL_DP2INDEXEDTRIANGLEFAN .
D3DDP2OP_TRIANGLEFAN_IMM
Dessine un ventilateur triangle. Le ventilateur est spécifié par une séquence de sommets stockés dans le flux de commandes (données immédiates). Le membre wPrimitiveCount de la structure D3DHAL_DP2COMMAND spécifie le nombre de triangles à afficher. Le type et la taille des sommets sont spécifiés par le membre dwVertexType de la structure D3DHAL_DRAWPRIMITIVES2DATA .
D3DDP2OP_LINELIST_IMM
Dessine un ensemble de lignes. Chaque ligne est spécifiée par une paire de sommets stockés dans le flux de commandes (données immédiates). Le membre wPrimitiveCount de la structure D3DHAL_DP2COMMAND spécifie le nombre de paires de sommets qui suivent. Le type et la taille des sommets sont déterminés par le membre dwVertexType de la structure D3DHAL_DRAWPRIMITIVES2DATA .
D3DDP2OP_TEXTURESTAGESTATE
Spécifie un changement d’état de rendu de texture qui nécessite un traitement. L’état de rendu à modifier est spécifié par une ou plusieurs structures D3DHAL_DP2TEXTURESTAGESTATE . La valeur dans le membre TSState spécifie l’état de texture à mettre à jour.
D3DDP2OP_INDEXEDTRIANGLELIST2
Dessine une liste de triangles. Chaque triangle est spécifié par trois index dans la mémoire tampon de vertex, un index par sommet triangle. La liste de triangles est spécifiée par une ou plusieurs structures D3DHAL_DP2INDEXEDTRIANGLELIST2 .
D3DDP2OP_INDEXEDLINELIST2
Dessine une liste de lignes. Chaque ligne est spécifiée par une paire d’index de vertex, avec chaque décalage à partir du début de la mémoire tampon de vertex d’une quantité fixe. La liste de lignes indexées est spécifiée par une ou plusieurs structures D3DHAL_DP2INDEXEDLINELIST .
D3DDP2OP_VIEWPORTINFO
Spécifie le rectangle de découpage utilisé pour la coupe de bande de protection par les pilotes prenant en charge la bande de protection. Le rectangle de découpage (autrement dit, le rectangle d’affichage) est spécifié par la structure D3DHAL_DP2VIEWPORTINFO .
D3DDP2OP_WINFO
Spécifie la plage w pour la mise en mémoire tampon w. Cette plage est spécifiée par une ou plusieurs structures D3DHAL_DP2WINFO .
D3DDP2OP_SETPALETTE
Spécifie que la palette est définie pour une texture. Voir D3DHAL_DP2SETPALETTE.
D3DDP2OP_UPDATEPALETTE
Spécifie qu’une palette de textures doit être mise à jour. Voir D3DHAL_DP2UPDATEPALETTE.
D3DDP2OP_ZRANGE
Spécifie la plage de valeurs z. Voir D3DHAL_DP2ZRANGE.
D3DDP2OP_SETMATERIAL
Définit les propriétés d’un matériau. D3DHAL_DP2SETMATERIAL est une structure de D3DMATERIAL7 (décrite dans la documentation du KIT de développement logiciel (SDK) DirectX) utilisée pour définir les propriétés de matériau.
D3DDP2OP_SETLIGHT
Spécifie qu’une lumière est en cours de définition. Voir D3DHAL_DP2SETLIGHT.
D3DDP2OP_CREATELIGHT
Crée une lumière. Voir D3DHAL_DP2CREATELIGHT.
D3DDP2OP_SETTRANSFORM
Configure une transformation. Voir D3DHAL_DP2SETTRANSFORM.
D3DDP2OP_TEXBLT
Spécifie une opération blt d’une texture source vers une texture de destination. Il est utilisé comme une alternative plus efficace à directDraw DdBlt DDI. Il est spécifié par une ou plusieurs structures D3DHAL_DP2TEXBLT . Étant donné que les pilotes Direct3D conservent tout l’état nécessaire pour effectuer un blt (par exemple, les poignées de texture et les modes de fusion), un blt peut être effectué avec uniquement les informations contenues dans l’opcode D3DDP2OP_TEXBLT. Ce nouveau jeton signale au pilote qu’une texture doit être transférée de la mémoire système vers une mémoire vidéo locale ou non locale.
D3DDP2OP_STATESET
Spécifie une opération de jeu d’états à effectuer. Voir D3DHAL_DP2STATESET.
D3DDP2OP_SETPRIORITY
Définit la priorité d’une texture managée. Voir D3DHAL_DP2SETPRIORITY.
D3DDP2OP_SETRENDERTARGET
Définit la cible de rendu. Les pilotes Direct3D doivent répondre à cet opcode exactement comme avec l’ancien rappel SetRenderTarget . Voir D3DHAL_DP2SETRENDERTARGET.
D3DDP2OP_CLEAR
Spécifie une opération claire. Remplace les rappels Clear et Clear2 . Voir D3DHAL_DP2CLEAR.
D3DDP2OP_SETTEXLOD
Indique que le niveau de détail (LOD) pour les mappages MIP est en cours de définition. Voir D3DHAL_DP2SETTEXLOD.
D3DDP2OP_SETCLIPPLANE
Spécifie qu’un plan clip défini par l’utilisateur est utilisé. Voir 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
DirectX 8.0 et versions ultérieures uniquement. Ce jeton est envoyé au pilote pour dessiner des ventilateurs de triangles transformés et clippés. Ce jeton remplace les jetons DirectX 7.0 qui utilisaient des sommets inline dans le flux de commandes. Les ventilateurs triangle sont spécifiés par une ou plusieurs structures D3DHAL_CLIPPEDTRIANGLEFAN .
D3DDP2OP_DRAWPRIMITIVE2
D3DDP2OP_DRAWINDEXEDPRIMITIVE2
D3DDP2OP_DRAWRECTPATCH
D3DDP2OP_DRAWTRIPATCH
D3DDP2OP_VOLUMEBLT
Prend en charge la copie et la mise à jour optimales des textures de volume. Ce jeton est très similaire à la D3DDP2OP_TEXBLT existante qui copie et met à jour les textures, mais a été étendu pour prendre en charge la copie de sous-volume (boîte) plutôt que de simples rectangles.
D3DDP2OP_BUFFERBLT
D3DDP2OP_MULTIPLYTRANSFORM
DirectX 8.0 et versions ultérieures uniquement. Multiplie une transformation actuelle. Voir 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

Remarques

Notez que, étant donné que les énumérateurs D3DNTDP2OP_XXX sont de type D3DDP2OP_XXX en interne dans le fichier Dx95type.h du Kit de pilotes Windows (WDK), le formulaire plus court est utilisé ici pour plus de clarté. Les deux formulaires sont valides sur Windows 2000 et les implémentations ultérieures, mais seul le formulaire plus court peut être utilisé sur Windows 98/Me.

Le D3DNTHAL_DP2OPERATION type énuméré est le type défini comme le type D3DHAL_DP2OPERATION énuméré dans le fichier Dx95type.h . Le type énuméré ultérieur (formulaire plus court) est utilisé ici pour plus de clarté. Les deux formulaires sont valides sur Windows 2000 et les implémentations ultérieures, mais seul le formulaire plus court peut être utilisé sur Windows 98/Me.

Configuration requise

Condition requise Valeur
En-tête d3dhal.h (inclure D3dhal.h)