Share via


Funzione D3DXLoadMeshFromX

Carica una mesh da un file DirectX .x.

Sintassi

HRESULT D3DXLoadMeshFromX(
  _In_  LPCTSTR           pFilename,
  _In_  DWORD             Options,
  _In_  LPDIRECT3DDEVICE9 pD3DDevice,
  _Out_ LPD3DXBUFFER      *ppAdjacency,
  _Out_ LPD3DXBUFFER      *ppMaterials,
  _Out_ LPD3DXBUFFER      *ppEffectInstances,
  _Out_ DWORD             *pNumMaterials,
  _Out_ LPD3DXMESH        *ppMesh
);

Parametri

pFilename [in]

Tipo: LPCTSTR

Puntatore a una stringa che specifica il nome file. Se le impostazioni del compilatore richiedono Unicode, il tipo di dati LPCTSTR viene risolto in LPCWSTR. In caso contrario, il tipo di dati stringa viene risolto in LPCSTR. Vedere la sezione Osservazioni.

Opzioni [in]

Tipo: DWORD

Combinazione di uno o più flag dell'enumerazione D3DXMESH , che specifica le opzioni di creazione per la mesh.

pD3DDevice [in]

Tipo: LPDIRECT3DDEVICE9

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

ppAdjacency [out]

Tipo: LPD3DXBUFFER*

Puntatore a un buffer che contiene dati di adiacenza. I dati di adiacenza contengono una matrice di tre DWORD per viso che specificano i tre vicini per ogni viso nella mesh. Per altre informazioni sull'accesso al buffer, vedere ID3DXBuffer.

ppMaterials [out]

Tipo: LPD3DXBUFFER*

Puntatore a un buffer contenente i dati dei materiali. Il buffer contiene una matrice di strutture D3DXMATERIAL contenenti informazioni dal file DirectX. Per altre informazioni sull'accesso al buffer, vedere ID3DXBuffer.

ppEffectInstances [out]

Tipo: LPD3DXBUFFER*

Puntatore a un buffer contenente una matrice di istanze di effetto, una per ogni gruppo di attributi nella mesh restituita. Un'istanza dell'effetto è una particolare istanza delle informazioni sullo stato utilizzate per inizializzare un effetto. Vedere D3DXEFFECTINSTANCE. Per altre informazioni sull'accesso al buffer, vedere ID3DXBuffer.

pNumMaterials [out]

Tipo: DWORD*

Puntatore al numero di strutture D3DXMATERIAL nella matrice ppMaterials , quando il metodo restituisce.

ppMesh [out]

Tipo: LPD3DXMESH*

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

Valore restituito

Tipo: HRESULT

Se la funzione ha esito positivo, il valore restituito viene D3D_OK. Se la funzione ha esito negativo, il valore restituito può essere uno dei valori seguenti: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Commenti

L'impostazione del compilatore determina anche la versione della funzione. Se Unicode è definito, la chiamata di funzione viene risolta in D3DXLoadMeshFromXW. In caso contrario, la chiamata di funzione viene risolta in D3DXLoadMeshFromXA perché vengono usate stringhe ANSI.

Tutte le mesh nel file verranno compresse in un'unica mesh di output. Se il file contiene una gerarchia di frame, tutte le trasformazioni verranno applicate alla mesh.

Per i file mesh che non contengono informazioni sull'istanza dell'effetto, le istanze dell'effetto predefinite verranno generate dalle informazioni sul materiale nel file con estensione x. Un'istanza dell'effetto predefinita avrà valori predefiniti che corrispondono ai membri della struttura D3DMATERIAL9 .

Il nome predefinito della trama viene compilato anche, ma viene gestito in modo diverso. Il nome sarà Texture0@Name, che corrisponde a una variabile di effetto con il nome di "Texture0" con un'annotazione denominata "Name". Questo conterrà il nome del file stringa per la trama.

Requisiti

Requisito Valore
Intestazione
D3DX9Mesh.h
Libreria
D3dx9.lib

Vedi anche

Funzioni mesh

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE