ID3DXFragmentLinker::LinkShader

Link a compiled shader at run time. This is a very lightweight operation.

HRESULT LinkShader(
  LPCSTR pProfile,
  DWORD Flags,
  CONST D3DXHANDLE * rgFragmentHandles,
  UINT cFragments,
  LPD3DXBUFFER* ppBuffer,
  LPD3DXBUFFER * ppErrorMsgs
);

Parameters

pProfile
[in] Pointer to a shader profile which detemines the shader instruction set. See D3DXGetVertexShaderProfile or D3DXGetPixelShaderProfile for a list of the profiles available.
Flags
[in] Link options. See D3DXSHADER Flags.
rgFragmentHandles
[in] An array of shader fragment handles. See Handles.
cFragments
[in] Number of fragments to be linked.
ppBuffer
[out] Pointer to a buffer that contains compiled shader code. See ID3DXBuffer.
ppErrorMsgs
[out, retval] Buffer containing at least the first compile error message that occurred. This includes effect compiler errors and high-level language compile errors. For more information about accessing the buffer, see ID3DXBuffer.

Return Values

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

Requirements

Header: Declared in D3dx9shader.h.