![]() |
![]() |
![]() |
Link a compiled vertex shader at run time. This is a very lightweight operation.
Syntax
HRESULT LinkVertexShader(
LPCSTR pProfile, DWORD Flags, CONST D3DXHANDLE *rgFragmentHandles, UINT cFragments, LPDIRECT3DVERTEXSHADER9* pVShader, LPD3DXBUFFER *ppErrorMsgs );
Parameters
- pProfile
- [in] Pointer to a vertex shader profile which detemines the shader instruction set. See D3DXGetVertexShaderProfile for a list of the profiles available.
- Flags
- [in] Link options. See D3DXSHADER Compile Options.
- rgFragmentHandles
- [in] An array of vertex shader fragment handles. See Handles.
- cFragments
- [in] Number of fragments to be linked.
- pVShader
- [out] Pointer to a vertex shader. See IDirect3DVertexShader9.
- 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 Value
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 An undetermined error occurred inside the Microsoft Direct3D subsystem. D3DERR_INVALIDCALL The method call is invalid. For example, a method's parameter may have an invalid value. D3DXERR_INVALIDDATA The data is invalid. E_OUTOFMEMORY Direct3D could not allocate sufficient memory to complete the call.