Fonction D3DXLoadMeshFromX

Charge un maillage à partir d’un fichier DirectX .x.

Syntaxe

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
);

Paramètres

pFilename [in]

Type : LPCTSTR

Pointeur vers une chaîne qui spécifie le nom de fichier. Si les paramètres du compilateur nécessitent Unicode, le type de données LPCTSTR est résolu en LPCWSTR. Sinon, le type de données de chaîne est résolu en LPCSTR. Consultez la section Notes.

Options [in]

Type : DWORD

Combinaison d’un ou de plusieurs indicateurs de l’énumération D3DXMESH , qui spécifie les options de création pour le maillage.

pD3DDevice [in]

Type : LPDIRECT3DDEVICE9

Pointeur vers une interface IDirect3DDevice9 , l’objet d’appareil associé au maillage.

ppAdjacency [out]

Type : LPD3DXBUFFER*

Pointeur vers une mémoire tampon qui contient des données d’adjacence. Les données d’adjacence contiennent un tableau de trois DWORD par visage qui spécifient les trois voisins pour chaque visage dans le maillage. Pour plus d’informations sur l’accès à la mémoire tampon, consultez ID3DXBuffer.

ppMaterials [out]

Type : LPD3DXBUFFER*

Pointeur vers une mémoire tampon contenant des données de matériaux. La mémoire tampon contient un tableau de structures D3DXMATERIAL , contenant des informations provenant du fichier DirectX. Pour plus d’informations sur l’accès à la mémoire tampon, consultez ID3DXBuffer.

ppEffectInstances [out]

Type : LPD3DXBUFFER*

Pointeur vers une mémoire tampon contenant un tableau d’instances d’effet, une par groupe d’attributs dans le maillage retourné. Un effet instance est un instance particulier des informations d’état utilisées pour initialiser un effet. Consultez D3DXEFFECTINSTANCE. Pour plus d’informations sur l’accès à la mémoire tampon, consultez ID3DXBuffer.

pNumMaterials [out]

Type : DWORD*

Pointeur vers le nombre de structures D3DXMATERIAL dans le tableau ppMaterials , lorsque la méthode retourne.

ppMesh [out]

Type : LPD3DXMESH*

Adresse d’un pointeur vers une interface ID3DXMesh , représentant le maillage chargé.

Valeur retournée

Type : HRESULT

Si la fonction réussit, la valeur de retour est D3D_OK. Si la fonction échoue, la valeur de retour peut être l’une des valeurs suivantes : D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Notes

Le paramètre du compilateur détermine également la version de la fonction. Si Unicode est défini, l’appel de fonction est résolu en D3DXLoadMeshFromXW. Sinon, l’appel de fonction est résolu en D3DXLoadMeshFromXA, car les chaînes ANSI sont utilisées.

Tous les maillages du fichier seront réduits en un seul maillage de sortie. Si le fichier contient une hiérarchie de trames, toutes les transformations seront appliquées au maillage.

Pour les fichiers de maillage qui ne contiennent pas d’informations d’effet instance, les instances d’effet par défaut sont générées à partir des informations matérielles dans le fichier .x. Un effet par défaut instance aura des valeurs par défaut qui correspondent aux membres de la structure D3DMATERIAL9.

Le nom de texture par défaut est également renseigné, mais il est géré différemment. Le nom sera Texture0@Name, ce qui correspond à une variable d’effet du nom « Texture0 » avec une annotation appelée « Name ». Celui-ci contiendra le nom de fichier de chaîne pour la texture.

Configuration requise

Condition requise Valeur
En-tête
D3DX9Mesh.h
Bibliothèque
D3dx9.lib

Voir aussi

Fonctions de maillage

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE