Partager via


Méthode IDirect3DDevice9 ::D rawIndexedPrimitiveUP (d3d9.h)

Restitue la primitive géométrique spécifiée avec les données spécifiées par un pointeur de mémoire utilisateur.

Syntaxe

HRESULT DrawIndexedPrimitiveUP(
  [in] D3DPRIMITIVETYPE PrimitiveType,
  [in] UINT             MinVertexIndex,
  [in] UINT             NumVertices,
  [in] UINT             PrimitiveCount,
  [in] const void       *pIndexData,
  [in] D3DFORMAT        IndexDataFormat,
  [in] const void       *pVertexStreamZeroData,
  [in] UINT             VertexStreamZeroStride
);

Paramètres

[in] PrimitiveType

Type : D3DPRIMITIVETYPE

Membre du D3DPRIMITIVETYPE type énuméré, décrivant le type de primitive à restituer.

[in] MinVertexIndex

Type : UINT

Index de vertex minimal. Il s’agit d’un index de base zéro.

[in] NumVertices

Type : UINT

Nombre de sommets utilisés pendant cet appel. Le premier vertex se trouve à l’index : MinVertexIndex.

[in] PrimitiveCount

Type : UINT

Nombre de primitives à restituer. Le nombre maximal de primitives autorisées est déterminé en vérifiant le membre MaxPrimitiveCount de la structure D3DCAPS9 (le nombre d’index est une fonction du nombre primitif et du type primitif).

[in] pIndexData

Type : const void*

Pointeur de mémoire utilisateur vers les données d’index.

[in] IndexDataFormat

Type : D3DFORMAT

Membre du D3DFORMAT type énuméré, décrivant le format des données d’index. Les paramètres valides sont les suivants :

[in] pVertexStreamZeroData

Type : const void*

Pointeur de mémoire utilisateur vers les données de vertex. Les données de vertex doivent se trouver dans le flux 0.

[in] VertexStreamZeroStride

Type : UINT

Nombre d’octets de données pour chaque sommet. Cette valeur peut ne pas être 0.

Valeur retournée

Type : HRESULT

Si la méthode réussit, la valeur de retour est D3D_OK. Si la méthode échoue, la valeur de retour peut être la suivante : D3DERR_INVALIDCALL.

Remarques

Cette méthode est destinée à être utilisée dans les applications qui ne peuvent pas stocker leurs données de vertex dans des tampons de vertex. Cette méthode ne prend en charge qu’un seul flux de vertex, qui doit être déclaré en tant que flux 0.

Après un appel IDirect3DDevice9 ::D rawIndexedPrimitiveUP , les paramètres du flux 0, référencés par IDirect3DDevice9 ::GetStreamSource, sont définis sur NULL. En outre, le paramètre de mémoire tampon d’index pour IDirect3DDevice9 ::SetIndices est défini sur NULL.

Les données de vertex transmises à IDirect3DDevice9 ::D rawIndexedPrimitiveUP n’ont pas besoin de persister après l’appel. Direct3D termine son accès à ces données avant de revenir de l’appel.

Lors de la conversion d’une application héritée en Direct3D 9, vous devez ajouter un appel à IDirect3DDevice9 ::SetFVF pour utiliser le pipeline de fonction fixe, ou à IDirect3DDevice9 ::SetVertexDeclaration pour utiliser un nuanceur de vertex avant d’effectuer des appels Draw.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête d3d9.h (inclure D3D9.h)
Bibliothèque D3D9.lib

Voir aussi

IDirect3DDevice9

IDirect3DDevice9 ::D rawPrimitive

Rendu à partir de tampons de vertex et d’index (Direct3D 9)