![]() |
![]() |
![]() |
Assemble a shader.
Syntax
HRESULT WINAPI D3DXAssembleShader(
LPCSTR pSrcData, UINT SrcDataLen, CONST D3DXMACRO* pDefines, LPD3DXINCLUDE pInclude, DWORD Flags, LPD3DXBUFFER* ppShader, LPD3DXBUFFER *ppErrorMsgs );
Parameters
- pSrcData
- [in] Pointer to a memory buffer that contains the shader data.
- SrcDataLen
- [in] Length of the effect data, in bytes.
- pDefines
- [in] An optional NULL terminated array of D3DXMACRO structures. This value may be NULL.
- 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 Compile Options.
- ppShader
- [out] Returns a buffer containing the created shader. This buffer contains the compiled shader code, as well as any embedded debug and symbol table information.
- ppErrorMsgs
- [out] Returns a buffer containing a listing of errors and warnings that were encountered during the compile. These are the same messages the debugger displays when running in debug mode. This value may be NULL.
Return Value
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 The method call is invalid. For example, a method's parameter may have an invalid value. D3DXERR_INVALIDDATA The data is invalid. E_OUTOFMEMORY Microsoft Direct3D could not allocate sufficient memory to complete the call.
Function Information
Header d3dx9shader.h Import library d3dx9.lib Minimum operating systems Windows 98
See Also
D3DXAssembleShaderFromFile, D3DXAssembleShaderFromResource