D3DX10CreateEffectPoolFromFile 函式
從效果檔案建立效果集區。
語法
HRESULT D3DX10CreateEffectPoolFromFile(
_In_ LPCTSTR pFileName,
_In_ const D3D_SHADER_MACRO *pDefines,
_In_ ID3D10Include *pInclude,
_In_ LPCSTR pProfile,
_In_ UINT HLSLFlags,
_In_ UINT FXFlags,
_In_ ID3D10Device *pDevice,
_In_ ID3DX10ThreadPump *pPump,
_Out_ ID3D10EffectPool **ppEffectPool,
_Out_ ID3D10Blob **ppErrors,
_Out_ HRESULT *pHResult
);
參數
-
pFileName [in]
-
類型: LPCTSTR
效果檔名。 如果編譯器設定需要 Unicode,則資料類型 LPCTSTR 會解析為 LPCWSTR。 否則,資料類型會解析為 LPCSTR。
-
pDefines [in]
-
類型:const D3D_SHADER_MACRO*
著色器宏的 Null 終止陣列 (請參閱 D3D_SHADER_MACRO) ;將此設定為 Null ,以指定沒有宏。
-
pInclude [in]
-
類型: ID3D10Include*
包含介面的指標 (請參閱 ID3D10Include 介面) 。 此參數可以是 Null。
-
pProfile [in]
-
類型: LPCSTR
指定 著色器設定檔或著色器模型的字串。
-
HLSLFlags [in]
-
類型: UINT
HLSL 編譯選項 (請參閱 D3D10_SHADER常數) 。
-
FXFlags [in]
-
類型: UINT
效果編譯選項 (請參閱 編譯和效果旗標) 。
-
pDevice [in]
-
類型: ID3D10Device*
裝置指標 (請參閱將使用資源的 ID3D10Device 介面) 。
-
pPump [in]
-
類型: ID3DX10ThreadPump*
執行緒幫浦介面的指標 (請參閱 ID3DX10ThreadPump 介面) 。 使用 Null 指定此函式在完成之前不應傳回。
-
ppEffectPool [out]
-
類型: ID3D10EffectPool**
效果集區的指標位址 (請參閱 ID3D10EffectPool 介面) 。
-
ppErrors [out]
-
類型: ID3D10Blob**
記憶體指標的位址 (如果有任何,請參閱 ID3D10Blob 介面) ,其中包含效果編譯錯誤。
-
pHResult [out]
-
類型: HRESULT*
傳回值的指標。 可能是 Null。 如果 pPump 不是 Null,則 pHResult 必須是有效的記憶體位置,直到非同步執行完成為止。
傳回值
類型: HRESULT
傳回值是 Direct3D 10 傳回碼中列出的其中一個值。
備註
此範例會從 BasicHLSL10 範例中使用的效果建立效果集區。
// Create an effect pool from an effect in memory
ID3D10EffectPool * l_pEffectPool = NULL;
ID3D10Blob* l_pBlob_Errors = NULL;
WCHAR str[MAX_PATH];
hr = DXUTFindDXSDKMediaFileCch( str, MAX_PATH, L"BasicHLSL10.fx" );
hr = D3DX10CreateEffectPoolFromFile( str,
NULL, NULL, D3D10_SHADER_ENABLE_STRICTNESS,
0, pd3dDevice, NULL, &l_pEffectPool,
&l_pBlob_Errors );
規格需求
需求 | 值 |
---|---|
標頭 |
|
另請參閱