D3DXCreateEffectCompilerFromFile

Creates an effect compiler from an ASCII effect description.

HRESULT D3DXCreateEffectCompilerFromFile(
  LPCTSTR pSrcFile,
  CONST D3DXMACRO* pDefines,
  LPD3DXINCLUDE pInclude,
  DWORD Flags,
  LPD3DXEFFECTCOMPILER * ppEffectCompiler,
  LPD3DXBUFFER * ppParseErrors
);

Parameters

pSrcFile
[in] Pointer to the filename. This parameter supports both Unicode and ANSI strings. See Remarks.
pDefines
[in] Pointer to the preprocessor definitions. See D3DXMACRO.
pInclude
[in] Optional interface pointer, ID3DXInclude, to use for handling #include directives. If this value is NULL, #includes will either be honored when compiling from a file or will cause an error when compiled from a resource or memory.
Flags
[in] Compile options identified by D3DXSHADER Flags.
ppEffectCompiler
[out, retval] Address of a pointer to an ID3DXEffectCompiler interface, containing the effect compiler.
ppParseErrors
[out, retval] Address of a pointer to an ID3DXBuffer interface, containing any error messages that occurred during compilation. This parameter can be set to NULL to ignore error messages.

Return Values

If the function succeeds, the return value is D3D_OK. If the function fails, the return value can be one of the following: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Remarks

If the compiler settings require Unicode, the data type LPCTSTR resolves to LPCWSTR. Otherwise, the LPCTSTR data type resolves to LPCSTR.

The compiler setting also determines the function version. If Unicode is defined, the function call resolves to D3DXCreateEffectCompilerFromFileW. Otherwise, the function call resolves to D3DXCreateEffectCompilerFromFileA because ANSI strings are being used.

Requirements

Header: Declared in D3dx9effect.h.

See Also

D3DXCreateEffectCompiler, D3DXCreateEffectCompilerFromResource