Condividi tramite


Metodo ID3DXBaseMesh::CloneMesh

Clona una mesh usando un dichiaratore.

Sintassi

HRESULT CloneMesh(
  [in]                DWORD             Options,
  [in]          const D3DVERTEXELEMENT9 *pDeclaration,
  [in]                LPDIRECT3DDEVICE9 pDevice,
  [out, retval]       LPD3DXMESH        *ppCloneMesh
);

Parametri

Opzioni [in]

Tipo: DWORD

Combinazione di uno o più flag D3DXMESH che specificano le opzioni di creazione per la mesh.

pDeclaration [in]

Tipo: const D3DVERTEXELEMENT9*

Matrice di elementi D3DVERTEXELEMENT9 , che specificano il formato dei vertici per i vertici nella mesh di output.

pDevice [in]

Tipo: LPDIRECT3DDEVICE9

Puntatore a un'interfaccia IDirect3DDevice9 che rappresenta l'oggetto dispositivo associato alla mesh.

ppCloneMesh [out, retval]

Tipo: LPD3DXMESH*

Indirizzo di un puntatore a un'interfaccia ID3DXMesh che rappresenta la mesh clonata.

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, E_OUTOFMEMORY.

Commenti

ID3DXBaseMesh::CloneMesh viene usato per riformattare e modificare il layout dei dati dei vertici. Questa operazione viene eseguita creando un nuovo oggetto mesh. Ad esempio, usarlo per aggiungere spazio per normali, coordinate di trama, colori, pesi e così via. che non erano presenti prima.

ID3DXBaseMesh::UpdateSemantics aggiorna la dichiarazione dei vertici con informazioni semantiche diverse senza modificare il layout del vertex buffer. Questo metodo non modifica il contenuto del vertex buffer. Ad esempio, usarlo per etichettare di nuovo una coordinata di trama 3D come binormal o tangente o viceversa.

Requisiti

Requisito Valore
Intestazione
D3DX9Mesh.h
Libreria
D3dx9.lib

Vedi anche

ID3DXBaseMesh

ID3DXBaseMesh::CloneMeshFVF

D3DXDeclaratorFromFVF