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 );
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|
另請參閱