Partager via


Méthode IDirect3DDevice9::CreateIndexBuffer (d3d9.h)

Crée une mémoire tampon d’index.

Syntaxe

HRESULT CreateIndexBuffer(
  [in]          UINT                  Length,
  [in]          DWORD                 Usage,
  [in]          D3DFORMAT             Format,
  [in]          D3DPOOL               Pool,
  [out, retval] IDirect3DIndexBuffer9 **ppIndexBuffer,
  [in]          HANDLE                *pSharedHandle
);

Paramètres

[in] Length

Type : UINT

Taille de la mémoire tampon d’index, en octets.

[in] Usage

Type : DWORD

L’utilisation peut être 0, ce qui indique aucune valeur d’utilisation. Toutefois, si l’utilisation est souhaitée, utilisez une combinaison d’une ou plusieurs constantes D3DUSAGE . Il est recommandé de faire correspondre le paramètre d’utilisation dans CreateIndexBuffer avec les indicateurs de comportement dans IDirect3D9::CreateDevice. Pour plus d'informations, consultez la section Notes.

[in] Format

Type : D3DFORMAT

Membre du type énuméré D3DFORMAT , décrivant le format de la mémoire tampon d’index. Pour plus d'informations, consultez la section Notes. Les paramètres valides sont les suivants :

Élément Description
D3DFMT_INDEX16 Les index sont de 16 bits chacun.
D3DFMT_INDEX32 Les index sont de 32 bits chacun.

[in] Pool

Type : D3DPOOL

Membre du type énuméré D3DPOOL , décrivant une classe de mémoire valide dans laquelle placer la ressource.

[out, retval] ppIndexBuffer

Type : IDirect3DIndexBuffer9**

Adresse d’un pointeur vers une interface IDirect3DIndexBuffer9 , représentant la ressource de mémoire tampon d’index créée.

[in] pSharedHandle

Type : HANDLE*

Ce paramètre peut être utilisé dans Direct3D 9 pour Windows Vista pour partager des ressources ; définissez-la sur NULL pour ne pas partager une ressource. Ce paramètre n’est pas utilisé dans Direct3D 9 pour les systèmes d’exploitation antérieurs à Windows Vista ; définissez-le sur NULL.

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 l’une des suivantes : D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.

Notes

Les mémoires tampons d’index sont des ressources de mémoire utilisées pour contenir des index. Elles sont similaires aux mémoires tampons de surface et de vertex. L’utilisation de mémoires tampons d’index permet à Direct3D d’éviter la copie inutile de données et de placer la mémoire tampon dans le type de mémoire optimal pour l’utilisation attendue.

Pour utiliser des mémoires tampons d’index, créez une mémoire tampon d’index, verrouillez-la, remplissez-la d’index, déverrouillez-la, passez-la à IDirect3DDevice9::SetIndices, configurez les sommets, configurez le nuanceur de vertex et appelez IDirect3DDevice9::D rawIndexedPrimitive pour le rendu.

Le membre MaxVertexIndex de la structure D3DCAPS9 indique les types de mémoires tampons d’index qui sont valides pour le rendu.

Spécifications

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

Voir aussi

IDirect3DDevice9

IDirect3DIndexBuffer9::GetDesc

Mémoires tampons d’index (Direct3D 9)