Metodo IDirect3DDevice9::CreateIndexBuffer (d3d9helper.h)
Crea un buffer di indice.
Sintassi
HRESULT CreateIndexBuffer(
[in] UINT Length,
[in] DWORD Usage,
[in] D3DFORMAT Format,
[in] D3DPOOL Pool,
[out, retval] IDirect3DIndexBuffer9 **ppIndexBuffer,
[in] HANDLE *pSharedHandle
);
Parametri
[in] Length
Tipo: UINT
Dimensioni del buffer di indice, in byte.
[in] Usage
Tipo: DWORD
L'utilizzo può essere 0, che indica nessun valore di utilizzo. Tuttavia, se si desidera usare , usare una combinazione di una o più costanti D3DUSAGE . È consigliabile associare il parametro di utilizzo in CreateIndexBuffer ai flag di comportamento in IDirect3D9::CreateDevice. Per altre informazioni, vedere la sezione Osservazioni.
[in] Format
Tipo: D3DFORMAT
Membro del tipo enumerato D3DFORMAT , che descrive il formato del buffer di indice. Per altre informazioni, vedere la sezione Osservazioni. Le impostazioni valide sono le seguenti:
Elemento | Descrizione |
---|---|
D3DFMT_INDEX16 | Gli indici sono a 16 bit ciascuno. |
D3DFMT_INDEX32 | Gli indici sono a 32 bit ciascuno. |
[in] Pool
Tipo: D3DPOOL
Membro del tipo enumerato D3DPOOL , che descrive una classe di memoria valida in cui inserire la risorsa.
[out, retval] ppIndexBuffer
Tipo: IDirect3DIndexBuffer9**
Indirizzo di un puntatore a un'interfaccia IDirect3DIndexBuffer9 che rappresenta la risorsa buffer di indice creata.
[in] pSharedHandle
Tipo: HANDLE*
Questo parametro può essere usato in Direct3D 9 per Windows Vista per condividere le risorse; impostarlo su NULL per non condividere una risorsa. Questo parametro non viene usato in Direct3D 9 per i sistemi operativi precedenti a Windows Vista; impostarla su NULL.
Valore restituito
Tipo: HRESULT
Se il metodo ha esito positivo, il valore restituito viene D3D_OK. Se il metodo ha esito negativo, il valore restituito può essere uno dei seguenti: D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA E_OUTOFMEMORY.
Commenti
I buffer di indice sono risorse di memoria usate per contenere indici, sono simili sia alle superfici che ai vertex buffer. L'uso dei buffer di indice consente a Direct3D di evitare la copia dei dati non necessaria e di inserire il buffer nel tipo di memoria ottimale per l'utilizzo previsto.
Per usare i buffer di indice, creare un buffer di indice, bloccarlo, riempirlo con indici, sbloccarlo, passarlo a IDirect3DDevice9::SetIndices, configurare i vertici, configurare il vertex shader e chiamare IDirect3DDevice9::D rawIndexedPrimitive per il rendering.
Il membro MaxVertexIndex della struttura D3DCAPS9 indica i tipi di buffer di indice validi per il rendering.
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | d3d9helper.h (include D3D9.h) |
Libreria | D3D9.lib |