D3DX10CreateEffectFromMemory 函式

從記憶體建立效果。

語法

HRESULT D3DX10CreateEffectFromMemory(
  _In_        LPCVOID            pData,
  _In_        SIZE_T             DataLength,
  _In_        LPCSTR             pSrcFileName,
  _In_  const D3D_SHADER_MACRO *pDefines,
  _In_        ID3D10Include      *pInclude,
  _In_        LPCSTR             pProfile,
  _In_        UINT               HLSLFlags,
  _In_        UINT               FXFlags,
  _In_        ID3D10Device       *pDevice,
  _In_        ID3D10EffectPool   *pEffectPool,
  _In_        ID3DX10ThreadPump  *pPump,
  _Out_       ID3D10Effect       **ppEffect,
  _Out_       ID3D10Blob         **ppErrors,
  _Out_       HRESULT            *pHResult
);

參數

pData [in]

類型: LPCVOID

記憶體中效果的指標。

DataLength [in]

類型: SIZE_T

記憶體中效果的大小。

pSrcFileName [in]

類型: LPCSTR

記憶體中效果檔案的名稱。

pDefines [in]

類型:const D3D_SHADER_MACRO*

著色器宏的 Null 終止陣列 (請參閱 D3D_SHADER_MACRO) ;將此設定為 Null ,以指定沒有宏。

pInclude [in]

類型: ID3D10Include*

包含介面的指標 (請參閱 ID3D10Include Interface) 。 此參數可以是 Null

pProfile [in]

類型: LPCSTR

指定 著色器設定檔或著色器模型的字串。

HLSLFlags [in]

類型: UINT

HLSL 編譯選項 (請參閱 D3D10_SHADER常數) 。

FXFlags [in]

類型: UINT

效果編譯選項 (請參閱 D3D10_EFFECT常數) 。

pDevice [in]

類型: ID3D10Device*

裝置 (的指標,請參閱將使用資源的 ID3D10Device 介面) 。

pEffectPool [in]

類型: ID3D10EffectPool*

效果集區的指標 (請參閱 ID3D10EffectPool 介面) ,以在效果之間共用變數。

pPump [in]

類型: ID3DX10ThreadPump*

執行緒幫浦介面的指標 (請參閱 ID3DX10ThreadPump 介面) 。 使用 Null 指定此函式在完成之前不應傳回。

ppEffect [out]

類型: ID3D10Effect**

(效果的指標位址,請參閱所建立的 ID3D10Effect 介面) 。

ppErrors [out]

類型: ID3D10Blob**

記憶體指標的位址 (如果有的話,請參閱 ID3D10Blob 介面) ,其中包含效果編譯錯誤。

pHResult [out]

類型: HRESULT*

傳回值的指標。 可為 Null。 如果 pPump 不是 Null則 pHResult 必須是有效的記憶體位置,直到非同步執行完成為止。

傳回值

類型: HRESULT

傳回值是 Direct3D 10 傳回碼中列出的其中一個值。

規格需求

需求
標頭
D3DX10Async.h

另請參閱

常規用途函式