D3DXLoadMeshFromX 函式
從 DirectX .x 檔案載入網格。
語法
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
);
參數
-
pFilename [in]
-
類型: LPCTSTR
指定檔案名的字串指標。 如果編譯器設定需要 Unicode,LPCTSTR 資料類型會解析為 LPCWSTR。 否則,字串資料類型會解析為 LPCSTR。 請參閱<備註>。
-
選項 [in]
-
類型: DWORD
D3DXMESH列舉中的一或多個旗標組合,指定網格的建立選項。
-
pD3DDevice [in]
-
IDirect3DDevice9介面的指標,即與網格相關聯的裝置物件。
-
ppAdjacency [out]
-
類型: LPD3DXBUFFER*
包含相鄰資料的緩衝區指標。 相鄰資料包含每個臉部三個 DWORD 的陣列,指定網格中每個臉部的三個芳鄰。 如需存取緩衝區的詳細資訊,請參閱 ID3DXBuffer。
-
ppMaterials [out]
-
類型: LPD3DXBUFFER*
緩衝區的指標,其中包含材質資料。 緩衝區包含 D3DXMATERIAL 結構的陣列,其中包含來自 DirectX 檔案的資訊。 如需存取緩衝區的詳細資訊,請參閱 ID3DXBuffer。
-
ppEffectInstances [out]
-
類型: LPD3DXBUFFER*
緩衝區的指標,其中包含效果實例陣列,每個傳回網格中的每個屬性群組一個。 效果實例是用來初始化效果的特定狀態資訊實例。 請參閱 D3DXEFFECTINSTANCE。 如需存取緩衝區的詳細資訊,請參閱 ID3DXBuffer。
-
pNumMaterials [out]
-
類型: DWORD*
當 方法傳回時,ppMaterials陣列中D3DXMATERIAL結構的指標。
-
ppMesh [out]
-
類型: LPD3DXMESH*
ID3DXMesh介面指標的位址,表示載入的網格。
傳回值
類型: HRESULT
如果函式成功,傳回值會D3D_OK。 如果函式失敗,傳回值可以是下列其中一個值:D3DERR_INVALIDCALL,E_OUTOFMEMORY。
備註
編譯器設定也會決定函式版本。 如果已定義 Unicode,函式呼叫會解析為 D3DXLoadMeshFromXW。 否則,函式呼叫會解析為 D3DXLoadMeshFromXA,因為正在使用 ANSI 字串。
檔案中的所有網格都會折迭成一個輸出網格。 如果檔案包含框架階層,所有轉換都會套用至網格。
對於不包含效果實例資訊的網格檔案,預設效果實例將會從 .x 檔案中的材質資訊產生。 預設效果實例會有對應至 D3DMATERIAL9 結構成員的預設值。
預設紋理名稱也會填入,但會以不同的方式處理。 名稱將會Texture0@Name,它會以名為 「Name」 的注釋名稱對應至效果變數。這會包含紋理的字串檔案名。
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|
另請參閱