D3DXSHEvalSphericalLight
Microsoft DirectX 9.0 SDK Update (October 2004)

D3DXSHEvalSphericalLight Function


Evaluates a spherical light and returns spectral spherical harmonic (SH) data.

Syntax

HRESULT WINAPI D3DXSHEvalSphericalLight(      

    UINT Order,     const D3DXVECTOR3 *pPos,     FLOAT Radius,     FLOAT RIntensity,     FLOAT GIntensity,     FLOAT BIntensity,     FLOAT *pROut,     FLOAT *pGOut,     FLOAT *pBOut );

Parameters

Order
[in] Order of the SH evaluation. Must be in the range of D3DXSH_MINORDER to D3DXSH_MAXORDER, inclusive. The evaluation generates Order2 coefficients. The degree of the evaluation is Order - 1.
pPos
[in] Pointer to the light position.
Radius
[in] Radius of spherical light source.
RIntensity
[in] The red intensity of the light.
GIntensity
[in] The green intensity of the light.
BIntensity
[in] The blue intensity of the light.
pROut
[out] Pointer to the output SH vector for the red component.
pGOut
[out] Pointer to the output SH vector for the green component.
pBOut
[out] Pointer to the output SH vector for the blue component.

Return Value

If the function succeeds, the return value is D3D_OK.

If the function fails, the return value can be D3DERR_INVALIDCALL.



Remarks

Evaluates a spherical light and returns spectral SH data. There is no normalization of the intensity of the light like there is for directional lights, so care has to be taken when specifying the intensities. This will compute three spectral samples; pROut will be returned, while pGOut and pBOut may be returned.

On the sphere with unit radius as shown, direction can be specified simply with theta, the angle about the z-axis in the right-handed direction, and phi, the angle from z.

The following equations show the relationship between Cartesian (x, y, z) and spherical (theta, phi) coordinates on the unit sphere. The angle theta varies over the range of 0 to 2 pi, while phi varies from 0 to pi.

Function Information

Headerd3dx9math.h
Import libraryd3dx9.lib
Minimum operating systems Windows 98

See Also

Precomputed Radiance Transfer


© 2004 Microsoft Corporation. All rights reserved.
Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center.