D3DXCreateEffectFromFile 函式
從 ASCII 或二進位效果描述建立效果。
語法
HRESULT D3DXCreateEffectFromFile(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ LPCTSTR pSrcFile,
_In_ const D3DXMACRO *pDefines,
_In_ LPD3DXINCLUDE pInclude,
_In_ DWORD Flags,
_In_ LPD3DXEFFECTPOOL pPool,
_Out_ LPD3DXEFFECT *ppEffect,
_Out_ LPD3DXBUFFER *ppCompilationErrors
);
參數
-
pDevice [in]
-
將建立效果之裝置的指標。 請參閱 IDirect3DDevice9。
-
pSrcFile [in]
-
類型: LPCTSTR
檔案名的指標。 此參數同時支援 Unicode 和 ANSI 字串。 請參閱<備註>。
-
pDefines [in]
-
類型:const D3DXMACRO*
選擇性 Null 終止的預處理器巨集定義陣列。 請參閱 D3DXMACRO。
-
pInclude [in]
-
類型: LPD3DXINCLUDE
選擇性介面指標 ID3DXInclude,用於處理#include指示詞。 如果此值為 Null,則從檔案編譯時#includes會接受,或從資源或記憶體編譯時造成錯誤。
-
旗標 [in]
-
類型: DWORD
如果 pSrcFile 包含文字效果,旗標可以是 D3DXSHADER 旗 標和 D3DXFX 旗標的組合;否則, pSrcFile 包含二進位效果,唯一接受的旗標是 D3DXFX 旗標。 Direct3D 10 HLSL 編譯器現在是預設值。 如需詳細資訊,請參閱 Effect-Compiler Tool 。
-
pPool [in]
-
類型: LPD3DXEFFECTPOOL
要用於共用參數的 ID3DXEffectPool 物件的指標。 如果此值為 Null,則不會共用任何參數。
-
ppEffect [out]
-
類型: LPD3DXEFFECT*
傳回包含已編譯效果之緩衝區的指標。 請參閱 ID3DXEffect。
-
ppCompilationErrors [out]
-
類型: LPD3DXBUFFER*
傳回包含編譯錯誤清單之緩衝區的指標。 請參閱 ID3DXBuffer。
傳回值
類型: HRESULT
如果函式成功,傳回值會D3D_OK。 如果函式失敗,傳回值可以是下列其中一項:D3DERR_INVALIDCALL、D3DXERR_INVALIDDATA E_OUTOFMEMORY。
備註
如果編譯器設定需要 Unicode,LPCTSTR 資料類型會解析為 LPCWSTR。 否則,LPCTSTR 資料類型會解析為 LPCSTR。
編譯器設定也會決定函式版本。 如果定義 Unicode,函式呼叫會解析為 D3DXCreateEffectFromFileW。 否則,函式呼叫會解析為 D3DXCreateEffectFromFileA,因為正在使用 ANSI 字串。
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|
另請參閱