Share via


Função D3DXSaveMeshToX

Salva uma malha em um arquivo .x.

Sintaxe

HRESULT D3DXSaveMeshToX(
  _In_       LPCTSTR            pFilename,
  _In_       LPD3DXMESH         pMesh,
  _In_ const DWORD              *pAdjacency,
  _In_ const D3DXMATERIAL       *pMaterials,
  _In_ const D3DXEFFECTINSTANCE *pEffectInstances,
  _In_       DWORD              NumMaterials,
  _In_       DWORD              Format
);

Parâmetros

pFilename [in]

Tipo: LPCTSTR

Ponteiro para uma cadeia de caracteres que especifica o nome do arquivo. Se as configurações do compilador exigirem Unicode, o tipo de dados LPCTSTR será resolvido para LPCWSTR. Caso contrário, o tipo de dados de cadeia de caracteres é resolvido para LPCSTR. Consulte Observações.

pMesh [in]

Tipo: LPD3DXMESH

Ponteiro para uma interface ID3DXMesh , representando a malha a ser salva em um arquivo .x.

pAdjacency [in]

Tipo: const DWORD*

Ponteiro para uma matriz de três DWORDs por rosto que especificam os três vizinhos para cada rosto na malha. Esse parâmetro pode ser NULL.

pMaterials [in]

Tipo: const D3DXMATERIAL*

Ponteiro para uma matriz de estruturas D3DXMATERIAL , contendo informações materiais a serem salvas no arquivo .x.

pEffectInstances [in]

Tipo: const D3DXEFFECTINSTANCE*

Ponteiro para uma matriz de instâncias de efeito, uma por grupo de atributos na malha. Esse parâmetro pode ser NULL. Uma instância de efeito é uma instância específica das informações de estado usadas para inicializar um efeito. Para obter mais informações, consulte D3DXEFFECTINSTANCE.

NumMaterials [in]

Tipo: DWORD

Número de estruturas D3DXMATERIAL na matriz pMaterials .

Formatar [in]

Tipo: DWORD

Uma combinação de formato de arquivo e opções de salvamento ao salvar um arquivo .x. Consulte Constantes de arquivo D3DX X.

Valor retornado

Tipo: HRESULT

Se a função for bem-sucedida, o valor retornado será D3D_OK. Se a função falhar, o valor retornado poderá ser um dos seguintes: D3DERR_INVALIDCALL.

Comentários

A configuração do compilador também determina a versão da função. Se Unicode for definido, a chamada de função será resolvida para D3DXSaveMeshToXW. Caso contrário, a chamada de função será resolvida para D3DXSaveMeshToXA porque as cadeias de caracteres ANSI estão sendo usadas.

O formato de arquivo padrão é binário; no entanto, se um arquivo for especificado como um binário e um arquivo de texto, ele será salvo como um arquivo de texto. Independentemente do formato de arquivo, você também pode usar o formato compactado para reduzir o tamanho do arquivo.

Veja a seguir um exemplo de código típico de como usar essa função.

ID3DXMesh*    m_pMesh;           // Mesh object to be saved to a .x file
D3DXMATERIAL* m_pMaterials;      // Array of material structs in the mesh
DWORD         m_dwNumMaterials;  // Number of material structs in the mesh
    
DWORD dwFormat = D3DXF_FILEFORMAT_BINARY;  // Binary-format .x file (default)
// DWORD dwFormat = D3DXF_FILEFORMAT_TEXT; // Text-format .x file
    
// Load mesh into m_pMesh and determine values of m_pMaterials and 
// m_dwNumMaterials with calls to D3DXLoadMeshxxx or other D3DX functions
    
// ...
        
D3DXSaveMeshToX(
    L"outputxfilename.x",
    m_pMesh,
    NULL,
    m_pMaterials,
    NULL,
    m_dwNumMaterials,
    dwFormat );

Requisitos

Requisito Valor
parâmetro
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Confira também

Funções de malha

D3DXEFFECTDEFAULT

D3DXEFFECTINSTANCE