D3DXCreateEffectCompilerFromResource function

Creates an ID3DXEffectCompiler from an ASCII effect description.

Syntax

HRESULT D3DXCreateEffectCompilerFromResource(
  _In_        HMODULE              hSrcModule,
  _In_        LPCTSTR              pSrcResource,
  _In_  const D3DXMACRO            *pDefines,
  _In_        LPD3DXINCLUDE        pInclude,
  _In_        DWORD                Flags,
  _Out_       LPD3DXEFFECTCOMPILER *ppEffectCompiler,
  _Out_       LPD3DXBUFFER         *ppParseErrors
);

Parameters

hSrcModule [in]

Type: HMODULE

Handle to a module containing the effect description. If this parameter is NULL, the current module will be used.

pSrcResource [in]

Type: LPCTSTR

Pointer to the resource. This parameter supports both Unicode and ANSI strings. See Remarks.

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.

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 D3DXCreateEffectCompilerFromResourceW. Otherwise, the function call resolves to D3DXCreateEffectCompilerFromResourceA because ANSI strings are being used.

Requirements

Requirement Value
Header
D3DX9Effect.h
Library
D3dx9.lib

See also

Effect Functions

D3DXCreateEffectCompiler

D3DXCreateEffectCompilerFromFile