Microsoft DirectX 9.0 SDK Update (October 2004)

SphericalHarmonics.EvaluateDirectionalLight Method

Language:

Note: This documentation is preliminary and is subject to change.

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

Definition

Visual Basic .NET Public Shared Sub EvaluateDirectionalLight( _
    ByVal order As Integer, _
    ByVal direction As Vector3, _
    ByVal redIntensity As Single, _
    ByVal greenIntensity As Single, _
    ByVal blueIntensity As Single, _
    ByVal redOutput As GraphicsStream, _
    ByVal greenOutput As GraphicsStream, _
    ByVal blueOutput As GraphicsStream _
)
C# public static void EvaluateDirectionalLight(
    int order,
    Vector3 direction,
    float redIntensity,
    float greenIntensity,
    float blueIntensity,
    GraphicsStream redOutput,
    GraphicsStream greenOutput,
    GraphicsStream blueOutput
);
Managed C++ public: static void EvaluateDirectionalLight(
    int order,
    Vector3 direction,
    float redIntensity,
    float greenIntensity,
    float blueIntensity,
    GraphicsStream *redOutput,
    GraphicsStream *greenOutput,
    GraphicsStream *blueOutput
);
JScript .NET public static function EvaluateDirectionalLight(
    order : int,
    direction : Vector3,
    redIntensity : float,
    greenIntensity : float,
    blueIntensity : float,
    redOutput : GraphicsStream,
    greenOutput : GraphicsStream,
    blueOutput : GraphicsStream
);

Parameters

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.
direction Microsoft.DirectX.Vector3. The (x, y, z) hemisphere axis direction vector in which to evaluate the spherical harmonic (SH) basis functions. See Remarks.
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 Microsoft.DirectX.GraphicsStream. Output spherical harmonic (SH) vector for the blue component.
greenOutput Microsoft.DirectX.GraphicsStream. Output spherical harmonic (SH) vector for the green component.
blueOutput Microsoft.DirectX.GraphicsStream. Output spherical harmonic (SH) vector for the blue component.

Remarks

Evaluates a directional light and returns spectral spherical harmonic (SH) data. The output vector is computed so that if the intensity ratio R/G/B is equal to 1, the resulting exit radiance of a point directly under the light on a diffuse object with an albedo of 1 would be 1.0. 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.

Spherical Coordinates

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.

Spherical Coordinates Equations

Exceptions
InvalidCallException The method call is invalid. For example, a method's parameter might contain an invalid value.


© 2004 Microsoft Corporation. All rights reserved. Terms of use.

Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center