Table 6.260 — DRM_Spot_Light

Property

Description

Class

  • <DRM Spot Light>

Superclass

Subclass

  • None.

Definition

An instance of this DRM class is a <DRM Base Positional Light> instance that specifies an elliptical cone of influence, the tip of which is the specified <DRM Location 3D> component. The elliptical cone is bounded where it intersects the sphere centred at the tip with radius as specified by the radius field. This results in a truncated elliptical cone. Only objects located within this elliptical cone are affected by the light.

The location of the spot light is specified by the <DRM Location 3D> component. The shape and orientation of the spot light is specified by the <DRM Lobe Data> component L as follows:

  1. The direction at which the spot light is pointed is specified by the <DRM Reference Vector> component of L that has a vector_type field value of LIGHT_DIRECTION.
  2. The up axis of the spot light is specified by the <DRM Reference Vector> component of L that has a vector_type field value of VERTICAL_AXIS. The VERTICAL_AXIS vector specifies the rotational orientation of the spot light around the LIGHT_DIRECTION vector.

These provide the necessary information to position the spot light in the currently applicable SRF, orient the spot light with respect to its VERTICAL_AXIS vector, and identify the direction in which the spot light is pointing. The lobe shape is centred horizontally and vertically around the LIGHT_DIRECTION vector, with origin at the location specified by the <DRM Location 3D> component.

The intensity dropoff is computed as follows. Given a point on a ray in the cone at fixed distance D from the cone apex, if

I0 = intensity on L’s LIGHT_DIRECTION vector at distance D,
Ah = the horizontal angle of the ray in radians from LIGHT_DIRECTION vector, and
Av = the vertical angle of the ray in radians from LIGHT_DIRECTION vector;

then the intensity I at the point is:

Case 1:  0,0 < horizontal_drop_off_rate, 0,0 < vertical_drop_off_rate

I = I0 × (1,0 - |Ah| × horizontal_drop_off_rate) × (1,0 - |Av| × vertical_drop_off_rate)

Case 2:  0,0 = horizontal_drop_off_rate, 0,0 < vertical_drop_off_rate

I = I0 × (1,0 - |Av| × vertical_drop_off_rate)

Case 3:  0,0 < horizontal_drop_off_rate, 0,0 = vertical_drop_off_rate

I = I0 × (1,0 - |Ah| × horizontal_drop_off_rate)

The horizontal_drop_off_rate field specifies, in radians, the horizontal angular intensity distribution of the light. The higher this value, the more focused the light. A value of 0,0 specifies a light that equally illuminates all objects within the cone of influence, and instantly falls to an intensity of 0,0 at the edge of the cone of light.

The vertical_drop_off_rate specifies, in radians, the vertical angular intensity distribution of the light. The higher this value, the more focused the light. A value of 0,0 specifies a light that equally illuminates all objects within the cone of influence, and instantly falls to an intensity of 0,0 at the edge of the cone of light.

Class diagram

Figure 6.322 — DRM_Spot_Light

Inherited field elements

Field name

Range

Field data type

apply_to_children

 

Boolean

override_positional_lights

 

Boolean

override_infinite_lights

 

Boolean

active_light_value

 

Boolean

radius

≥ 0,0

Float

constant_attenuation_factor

 

Long_Float

linear_attenuation_factor

 

Long_Float

quadratic_attenuation_factor

 

Long_Float

Field elements

Field name

Range

Field data type

horizontal_drop_off_rate

 

Long_Float

vertical_drop_off_rate

 

Long_Float

Default field values

Default field values for DRM_Spot_Light

Associated to (one-way) (inherited)

  • None.

Associated to (one-way)

  • None.

Associated by (one-way) (inherited)

  • None.

Associated by (one-way)

  • None.

Associated with (two-way) (inherited)

  • None.

Associated with (two-way)

  • None.

Composed of (two-way) (inherited)

Composed of (two-way)

Composed of (two-way metadata) (inherited)

  • None.

Composed of (two-way metadata)

  • None.

Component of (two-way) (inherited)

Component of (two-way)

  • None.

Constraints

Clarifications

1A <DRM Classification Data> component, if present, allows a data provider to specify whether the <DRM Light Source> instance represents an environmental object, such as the sun.

2If a <DRM Light Source> instance is to be turned on and off dynamically, it has a <DRM Light Source Control Link> component to express that control mechanism.

3The <DRM Location 3D> component specifies the position of the <DRM Base Positional Light> instance.

4The <DRM Lobe Data> component specifies the lobe shape.

Example(s)