Microsoft DirectX 9.0

D3DXGatherFragmentsFromResource Function

Gather shader fragments into a buffer to be passed to the fragment linker.


HRESULT WINAPI D3DXGatherFragmentsFromResource(      

    HMODULE hSrcModule,     LPCTSTR pSrcResource,     CONST D3DXMACRO* pDefines,     LPD3DXINCLUDE pInclude,     DWORD Flags,     LPD3DXBUFFER* ppShader,     LPD3DXBUFFER *ppErrorMsgs );


[in] Handle to the module where the resource is located, or NULL for the module associated with the image the operating system used to create the current process.
[in] Pointer to the resource name. If the compiler settings require Unicode, the data type LPCTSTR resolves to LPCWSTR. Otherwise, the string data type resolves to LPCSTR. See Remarks.
[in] Pointer to the preprocessor definitions. See D3DXMACRO.
[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.
[in] Compile options identified by D3DXSHADER.
[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.
[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 values.

D3DERR_INVALIDCALLThe method call is invalid. For example, a method's parameter may have an invalid value.
D3DXERR_INVALIDDATAThe data is invalid.
E_OUTOFMEMORYMicrosoft?Direct3D?could not allocate sufficient memory to complete the call.


The compiler setting also determines the function version. If Unicode is defined, the function call resolves to D3DXGatherFragmentsFromResourceW. Otherwise, the function call resolves to D3DXGatherFragmentsFromResourceA because ANSI strings are being used.

Function Information

Import libraryd3dx9.lib
Minimum availabilityDirectX 9.0
Minimum operating systems Windows 2000, Windows 98

See Also


© 2002 Microsoft Corporation. All rights reserved.