![]() |
![]() |
![]() |
SphericalHarmonics.EvaluateSphericalLight Method |
Language: |
Evaluates a spherical light and returns spectral spherical harmonic (SH) data.
Visual Basic .NET Public Shared Sub EvaluateSphericalLight( _
ByVal order As Integer, _
ByVal position As Vector3, _
ByVal radius As Single, _
ByVal redIntensity As Single, _
ByVal greenIntensity As Single, _
ByVal blueIntensity As Single, _
ByVal redOutput() As Single, _
ByVal greenOutput() As Single, _
ByVal blueOutput() As Single _
)C# public static void EvaluateSphericalLight(
int order,
Vector3 position,
float radius,
float redIntensity,
float greenIntensity,
float blueIntensity,
float[] redOutput,
float[] greenOutput,
float[] blueOutput
);Managed C++ public: static void EvaluateSphericalLight(
int order,
Vector3 position,
float radius,
float redIntensity,
float greenIntensity,
float blueIntensity,
float redOutput __gc[],
float greenOutput __gc[],
float blueOutput __gc[]
);JScript .NET public static function EvaluateSphericalLight(
order : int,
position : Vector3,
radius : float,
redIntensity : float,
greenIntensity : float,
blueIntensity : float,
redOutput : float[],
greenOutput : float[],
blueOutput : float[]
);
order System.Int32. Order of the spherical harmonic (SH) evaluation. Must be in the range of SphericalHarmonics.MinimumOrder to SphericalHarmonics.MaximumOrder, inclusive. The evaluation generates order2 coefficients. The degree of the evaluation is order - 1. position Microsoft.DirectX.Vector3. The (x, y, z) hemisphere axis direction vector in which to evaluate the spherical harmonic (SH) basis functions. See Remarks. radius System.Single. Radius of the spherical light source. redIntensity System.Single. The red intensity of the light. greenIntensity System.Single. The green intensity of the light. blueIntensity System.Single. The blue intensity of the light. redOutput System.Single[]. Output spherical harmonic (SH) vector for the red component. greenOutput System.Single[]. Output spherical harmonic (SH) vector for the green component. blueOutput System.Single[]. Output spherical harmonic (SH) vector for the red component.
Evaluates a spherical light and returns spectral spherical harmonic (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; redOutput will be returned, while greenOutput and blueOutput 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.
![]()
Exceptions
InvalidCallException The method call is invalid. For example, a method's parameter might contain an invalid value.
Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center