D3DXCompileShaderFromFile
Compile a shader file.
HRESULT D3DXCompileShaderFromFile(
LPCSTR pSrcFile,
CONST D3DXMACRO* pDefines,
LPD3DXINCLUDE pInclude,
LPCSTR pFunctionName,
LPCSTR pProfile,
DWORD Flags,
LPD3DXBUFFER* ppShader,
LPD3DXBUFFER * ppErrorMsgs,
LPD3DXCONSTANTTABLE * ppConstantTable
);
Parameters
- pSrcFile
- [in] Pointer to a string that specifies the filename.
- 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.
- pFunctionName
- [in] Pointer to the shader entry point function where execution begins.
- pProfile
- [in] Pointer to a shader profile which determines the shader instruction set. See D3DXGetVertexShaderProfile or D3DXGetPixelShaderProfile for a list of the profiles available.
- Flags
- [in] Compile options identified by D3DXSHADER Flags.
- 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.
- ppConstantTable
- [out] Returns an ID3DXConstantTable interface, which can be used to access shader constants. This value may be NULL.
Return Values
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, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.
Requirements
Header: Declared in D3dx9shader.h.
See Also
D3DXCompileShader, D3DXCompileShaderFromResource