Home | Table Of Content | Previous | Next |

Light Source Editor Panel

The light editor allows to modify the characteristics of the current light source. The number of widgets of this window varies with the type of the light source.

A light source can be directional or positional. A positional light that emits light only inside a conical region is called a spot light. The way I implemented the lighting in MSV positional lights are always bound to an object i.e. transformations applied to the object transform the light source position as well. Directional lights are not bound to any object and therefore are never transformed.

Editing a directional light

A directional light is defined by an ambient, diffuse and specular color and the direction along which the light is propagated.

The color components can be modified using the type-ins or using a color editor. To bind the color editor to a component push the diamond shaped button to the right of the type-ins.

The light's direction can be modified using the corresponding type-ins or by binding the mouse to the current light and rotating it using the mouse. To bind the mouse to the current light source, one can either push the diamond shaped button to the right of the Direction type-ins or use the light transformation button in the main window.

To make the current light a positional one use the Positional radio button. This will add a number of widgets to the window. The Directional buttons allows to transform a positional light into a directional one. Switching between light types resets the light's transformation.

Editing a positional light

A positional light is like a light bubble, it emits light is all directions and the light's intensity decreases with the distance to the light source.

Note that the widgets used for the direction of the directional light are now used to define the light's position. These type-ins have a grey background showing that they are not active (you can not type in the position). The only way to modify the lights position is by selecting the current light using the diamond shaped button right to the Position type-ins or using the light transformation buttons in the main window and apply rotations and translations with the mouse.

The light's attenuation can be set using the three type-ins labeled Cst, linear and quadratic (see OpenGL programming guide).

As opposed to directional lights, positional lights are bound to an object. This means that the transformation that apply the this object will also transform the light. When a light becomes positional it is bound to the current object. To change the binding, make the light directional, select the object to which you want to bind the light and make it positional again. A positional light can be turned into a spot light using the Spot Light. This will add a number of widgets to the window.

Editing a spot light

Spot lights are positional but emit light only within a cone the angle of which can be modified using the Cut Off type-in. Allowed values ranges from 1.0 to 89.0 degrees.

The value of the Exponent determines how much of the light is concentrated at the center of the spot, a value of 0 corresponds to uniform light distribution in the cone and a value of 128 concentrates all the light at the center of the cone.

The direction of the spot can be modified using the mouse after pushing the diamond shaped button to the right of the Direction type-ins.

To make a spot light positional, push the Spot Light button again.


Home | Table Of Content | Previous | Next |

Michel Sanner
March 31 12:00 PDT 1997
sanner@scripps.edu