D3DXLoadMeshFromXInMemory 函式
從記憶體載入網格。
語法
HRESULT D3DXLoadMeshFromXInMemory(
_In_ LPCVOID Memory,
_In_ DWORD SizeOfMemory,
_Out_ DWORD Options,
_In_ LPDIRECT3DDEVICE9 pD3DDevice,
_Out_ LPD3DXBUFFER *ppAdjacency,
_Out_ LPD3DXBUFFER *ppMaterials,
_Out_ LPD3DXBUFFER *ppEffectInstances,
_Out_ DWORD *pNumMaterials,
_Out_ LPD3DXMESH *ppMesh
);
參數
-
記憶體 [in]
-
類型: LPCVOID
記憶體緩衝區的指標,其中包含網格資料。
-
SizeOfMemory [in]
-
類型: DWORD
記憶體中檔案的大小,以位元組為單位。
-
選項 [out]
-
類型: DWORD
D3DXMESH列舉中的一或多個旗標組合,指定網格的建立選項。
-
pD3DDevice [in]
-
IDirect3DDevice9介面的指標,即與網格相關聯的裝置物件。
-
ppAdjacency [out]
-
類型: LPD3DXBUFFER*
ID3DXBuffer介面指標的位址。 當方法傳回時,這個參數會填入每個臉部三個 DWORD 的陣列,指定網格中每個臉部的三個芳鄰。
-
ppMaterials [out]
-
類型: LPD3DXBUFFER*
ID3DXBuffer介面指標的位址。 當這個方法傳回時,此參數會填入 D3DXMATERIAL 結構的陣列,其中包含儲存在 DirectX 檔案中的資訊。
-
ppEffectInstances [out]
-
類型: LPD3DXBUFFER*
緩衝區的指標,其中包含效果實例陣列,每個傳回網格中的每個屬性群組一個。 效果實例是用來初始化效果的特定狀態資訊實例。 請參閱 D3DXEFFECTINSTANCE。 如需存取緩衝區的詳細資訊,請參閱 ID3DXBuffer。
-
pNumMaterials [out]
-
類型: DWORD*
當 方法傳回時,ppMaterials陣列中D3DXMATERIAL結構的指標。
-
ppMesh [out]
-
類型: LPD3DXMESH*
ID3DXMesh介面指標的位址,表示載入的網格。
傳回值
類型: HRESULT
如果函式成功,傳回值會D3D_OK。 如果函式失敗,傳回值可以是下列其中一個值:D3DERR_INVALIDCALL,E_OUTOFMEMORY。
備註
檔案中的所有網格都會折迭成一個輸出網格。 如果檔案包含框架階層,所有轉換都會套用至網格。
對於不包含效果實例資訊的網格檔案,預設效果實例將會從 .x 檔案中的材質資訊產生。 預設效果實例會有對應至 D3DMATERIAL9 結構成員的預設值。
預設紋理名稱也會填入,但會以不同的方式處理。 名稱將會Texture0@Name,它會以名為 「Name」 的注釋名稱對應至效果變數。這會包含紋理的字串檔案名。
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|
另請參閱