D3DXCreateEffectCompiler function

Creates an effect compiler from an ASCII effect description.

Syntax

HRESULT D3DXCreateEffectCompiler(
  _In_        LPCSTR               pSrcData,
  _In_        UINT                 SrcDataLen,
  _In_  const D3DXMACRO            *pDefines,
  _In_        LPD3DXINCLUDE        pInclude,
  _In_        DWORD                Flags,
  _Out_       LPD3DXEFFECTCOMPILER *ppEffectCompiler,
  _Out_       LPD3DXBUFFER         *ppParseErrors
);

Parameters

pSrcData [in]

Type: LPCSTR

Pointer to a buffer containing an effect description.

SrcDataLen [in]

Type: UINT

Length, in bytes, of the effect data.

pDefines [in]

Type: const D3DXMACRO*

An optional NULL-terminated array of D3DXMACRO structures that describe preprocessor definitions. This value can be NULL.

pInclude [in]

Type: LPD3DXINCLUDE

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]

Type: DWORD

Compile options identified by various flags (see D3DXSHADER Flags). The Direct3D 10 HLSL compiler is now the default. See Effect-Compiler Tool for details.

ppEffectCompiler [out]

Type: LPD3DXEFFECTCOMPILER*

Address of a pointer to an ID3DXEffectCompiler interface containing the effect compiler.

ppParseErrors [out]

Type: LPD3DXBUFFER*

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 value

Type: HRESULT

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.

Requirements

Requirement Value
Header
D3DX9Effect.h
Library
D3dx9.lib

See also

Effect Functions

D3DXCreateEffectCompilerFromFile

D3DXCreateEffectCompilerFromResource