Partager via


structure D3DHAL_DP2INDEXEDLINELIST (d3dhal.h)

D3DHAL_DP2INDEXEDLINELIST est analysé à partir de la mémoire tampon de commande par le rappel D3dDrawPrimitives2 lorsque le membre bCommand de la structure D3DHAL_DP2COMMAND est défini sur 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, identifiant le premier point de terminaison de la ligne.

wV2

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

Remarques

D3dDrawPrimitives2 doit traiter (wPrimitiveCount * 2) les index de la mémoire tampon de commande, en cours de traitement structures wPrimitiveCount D3DHAL_DP2INDEXEDLINELIST. La valeur de wPrimitiveCount est spécifiée dans la structure D3DHAL_DP2COMMAND.

Le pilote doit traiter un total de sommets (wPrimitiveCount * 2) à partir de la mémoire tampon de vertex, deux sommets par ligne. La séquence de lignes rendues est (wV1₀, wV2₀), (wV1₁, wV2₁), ..., (wV1n,wV2n), où n é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 mémoire tampon de vertex spécifié par l'dwVertexOffset membre de la structure D3DHAL_DRAWPRIMITIVES2DATA.
  • Lorsque la commande est D3DDP2OP_INDEXEDLINELIST2, une structure de D3DHAL_DP2STARTVERTEX 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 mémoire tampon de vertex spécifié par dwVertexOffset plus le décalage de base obtenu à partir du wVStart membre de la structure D3DHAL_DP2STARTVERTEX.
La figure suivante montre une partie d’un exemple de mémoire tampon de commande 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 commande 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, 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 de D3DHAL_DP2INDEXEDLINELIST

Exigences

Exigence Valeur
d’en-tête d3dhal.h (include D3dhal.h)

Voir aussi

D3DDP2OP_INDEXEDLINELIST

D3DHAL_DP2COMMAND

D3DHAL_DP2STARTVERTEX

D3DHAL_DRAWPRIMITIVES2DATA

D3dDrawPrimitives2