Compartir a través de


Función D3DXLoadMeshFromX

Carga una malla desde un archivo .x de DirectX.

Sintaxis

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

Parámetros

pFilename [in]

Tipo: LPCTSTR

Puntero a una cadena que especifica el nombre de archivo. Si la configuración del compilador requiere Unicode, el tipo de datos LPCTSTR se resuelve en LPCWSTR. De lo contrario, el tipo de datos de cadena se resuelve en LPCSTR. Vea la sección Comentarios.

Opciones [in]

Tipo: DWORD

Combinación de una o varias marcas de la enumeración D3DXMESH , que especifica las opciones de creación de la malla.

pD3DDevice [in]

Tipo: LPDIRECT3DDEVICE9

Puntero a una interfaz IDirect3DDevice9 , el objeto de dispositivo asociado a la malla.

ppAdjacency [out]

Tipo: LPD3DXBUFFER*

Puntero a un búfer que contiene datos de adyacencia. Los datos de adyacencia contienen una matriz de tres DWORD por cara que especifican los tres vecinos para cada cara de la malla. Para obtener más información sobre el acceso al búfer, consulte ID3DXBuffer.

ppMaterials [out]

Tipo: LPD3DXBUFFER*

Puntero a un búfer que contiene datos de materiales. El búfer contiene una matriz de estructuras D3DXMATERIAL , que contiene información del archivo DirectX. Para obtener más información sobre el acceso al búfer, consulte ID3DXBuffer.

ppEffectInstances [out]

Tipo: LPD3DXBUFFER*

Puntero a un búfer que contiene una matriz de instancias de efecto, una por grupo de atributos en la malla devuelta. Una instancia de efecto es una instancia determinada de información de estado utilizada para inicializar un efecto. Consulte D3DXEFFECTINSTANCE. Para obtener más información sobre el acceso al búfer, consulte ID3DXBuffer.

pNumMaterials [out]

Tipo: DWORD*

Puntero al número de estructuras D3DXMATERIAL de la matriz ppMaterials , cuando el método devuelve.

ppMesh [out]

Tipo: LPD3DXMESH*

Dirección de un puntero a una interfaz ID3DXMesh , que representa la malla cargada.

Valor devuelto

Tipo: HRESULT

Si la función se ejecuta correctamente, el valor devuelto es D3D_OK. Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes valores: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Observaciones

La configuración del compilador también determina la versión de la función. Si se define Unicode, la llamada de función se resuelve en D3DXLoadMeshFromXW. De lo contrario, la llamada de función se resuelve en D3DXLoadMeshFromXA porque se usan cadenas ANSI.

Todas las mallas del archivo se contraerán en una malla de salida. Si el archivo contiene una jerarquía de fotogramas, todas las transformaciones se aplicarán a la malla.

En el caso de los archivos de malla que no contienen información de instancia de efecto, las instancias de efecto predeterminadas se generarán a partir de la información de material del archivo .x. Una instancia de efecto predeterminada tendrá valores predeterminados que corresponden a los miembros de la estructura D3DMATERIAL9 .

El nombre de textura predeterminado también se rellena, pero se controla de forma diferente. El nombre será Texture0@Name, que corresponde a una variable de efecto por el nombre de "Texture0" con una anotación denominada "Name". Esto contendrá el nombre de archivo de cadena para la textura.

Requisitos

Requisito Value
Encabezado
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Consulte también

Funciones de malla

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE