D3DXSaveMeshToX 函数
将网格保存到 .x 文件。
语法
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
);
参数
-
pFilename [in]
-
类型: LPCTSTR
指向指定文件名的字符串的指针。 如果编译器设置需要 Unicode,则数据类型 LPCTSTR 解析为 LPCWSTR。 否则,字符串数据类型解析为 LPCSTR。 请参阅“备注”。
-
pMesh [in]
-
类型: LPD3DXMESH
指向 ID3DXMesh 接口的指针,表示要保存到 .x 文件的网格。
-
pAdjacency [in]
-
类型: const DWORD*
指向每个人脸三个 DWORD 的数组的指针,该数组指定网格中每个人脸的三个邻居。 此参数可以为 NULL。
-
pMaterials [in]
-
类型: const D3DXMATERIAL*
指向 D3DXMATERIAL 结构的数组的指针,其中包含要保存在 .x 文件中的材料信息。
-
pEffectInstances [in]
-
类型: const D3DXEFFECTINSTANCE*
指向效果实例数组的指针,网格中每个属性组一个。 此参数可以为 NULL。 效果实例是用于初始化效果的状态信息的特定实例。 有关详细信息,请参阅 D3DXEFFECTINSTANCE。
-
NumMaterials [in]
-
类型: DWORD
pMaterials 数组中的 D3DXMATERIAL 结构数。
-
格式 [in]
-
类型: DWORD
保存 .x 文件时文件格式和保存选项的组合。 请参阅 D3DX X 文件常量。
返回值
类型: HRESULT
如果函数成功,则返回值D3D_OK。 如果函数失败,则返回值可以是以下值之一:D3DERR_INVALIDCALL。
备注
编译器设置还确定函数版本。 如果定义了 Unicode,则函数调用将解析为 D3DXSaveMeshToXW。 否则,函数调用将解析为 D3DXSaveMeshToXA,因为正在使用 ANSI 字符串。
默认文件格式为二进制文件;但是,如果文件同时指定为二进制文件和文本文件,则会将其保存为文本文件。 无论文件格式如何,你也可以使用压缩格式来减小文件大小。
下面是有关如何使用此函数的典型代码示例。
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 );
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|
另请参阅