D3DHAL_DP2INDEXEDLINELIST structure (d3dhal.h)

D3DHAL_DP2INDEXEDLINELIST est analysé à partir de la mémoire tampon de commandes par le rappel D3dDrawPrimitives2 lorsque le membre bCommand de la structure D3DHAL_DP2COMMAND a la valeur D3DDP2OP_INDEXEDLINELIST et est utilisé pour afficher les lignes à l’aide d’index de vertex.

Syntaxe

typedef struct _D3DHAL_DP2INDEXEDLINELIST {
  WORD wV1;
  WORD wV2;
} D3DHAL_DP2INDEXEDLINELIST, *LPD3DHAL_DP2INDEXEDLINELIST;

Membres

wV1

Spécifie l’index dans la mémoire tampon de vertex, en identifiant le premier point de terminaison de la ligne.

wV2

Spécifie l’index dans la mémoire tampon de vertex, en identifiant le deuxième point de terminaison de la ligne.

Remarques

D3dDrawPrimitives2 doit traiter (wPrimitiveCount * 2) les index à partir de la mémoire tampon de commandes, en traitant de fait wPrimitiveCount D3DHAL_DP2INDEXEDLINELIST structures. La valeur de wPrimitiveCount est spécifiée dans la structure D3DHAL_DP2COMMAND.

Le pilote doit traiter un total de (wPrimitiveCount * 2) sommets à partir de la mémoire tampon de vertex, deux sommets par ligne. La séquence de lignes affichée est (wV1₀, wV2₀), (wV1₁, wV2₁), ..., (wV1n,wV2n), où n est égal à (wPrimitiveCount- 1). Le pilote doit interpréter les index de mémoire tampon de vertex en fonction de la commande actuelle comme suit :

  • Lorsque la commande est D3DDP2OP_INDEXEDLINELIST, les index de mémoire tampon de vertex sont relatifs au décalage de la mémoire tampon de vertex spécifié par le membre dwVertexOffset de la structure D3DHAL_DRAWPRIMITIVES2DATA .
  • Lorsque la commande est D3DDP2OP_INDEXEDLINELIST2, une structure D3DHAL_DP2STARTVERTEX la suit immédiatement et précède la ou les structures D3DHAL_DP2INDEXEDLINELIST dans la mémoire tampon de commande. Les index de mémoire tampon de vertex sont relatifs au décalage de la mémoire tampon de vertex spécifié par dwVertexOffset plus le décalage de base obtenu à partir du membre wVStart de la structure D3DHAL_DP2STARTVERTEX.
L’illustration suivante montre une partie d’un exemple de mémoire tampon de commandes contenant une commande D3DDP2OP_INDEXEDLINELIST et deux structures D3DHAL_DP2INDEXEDLINELIST. Le pilote doit dessiner deux lignes à l’aide des quatre sommets suivants à partir de la mémoire tampon de vertex : (v[0], v[4]), (v[5], v[6]). Figure montrant une mémoire tampon de commandes avec une commande D3DDP2OP_INDEXEDLINELIST et deux structures D3DHAL_DP2INDEXEDLINELIST De même, la figure suivante montre une partie d’un exemple de mémoire tampon de commandes contenant une commande D3DDP2OP_INDEXEDLINELIST2, un décalage D3DHAL_DP2STARTVERTEX et deux structures D3DHAL_DP2INDEXEDLINELIST. Le pilote doit traiter quatre sommets à partir de la mémoire tampon de vertex, en rendant deux lignes définies par (v[3], v[7]), (v[8], v[9]). Figure montrant une mémoire tampon de commandes avec une commande D3DDP2OP_INDEXEDLINELIST2, un décalage D3DHAL_DP2STARTVERTEX et deux structures D3DHAL_DP2INDEXEDLINELIST

Configuration requise

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

Voir aussi

D3DDP2OP_INDEXEDLINELIST

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2