Struct dae_parser::SpotLight[][src]

pub struct SpotLight {
    pub color: Box<[f32; 3]>,
    pub constant_attenuation: f32,
    pub linear_attenuation: f32,
    pub quadratic_attenuation: f32,
    pub falloff_angle: f32,
    pub falloff_exponent: f32,
}
Expand description

Describes a spot light source.

The light’s default direction vector in local coordinates is [0,0,-1], pointing down the negative z axis. The actual direction of the light is defined by the transform of the node where the light is instantiated.

The constant_attenuation, linear_attenuation, and quadratic_attenuation are used to calculate the total attenuation of this light given a distance. The equation used is:

A = constant_attenuation + Dist * linear_attenuation + Dist^2 * quadratic_attenuation

The falloff_angle and falloff_exponent are used to specify the amount of attenuation based on the direction of the light.

Fields

color: Box<[f32; 3]>

Contains three floating-point numbers specifying the color of the light.

constant_attenuation: f32

The constant term in the attentuation equation, see SpotLight.

linear_attenuation: f32

The linear term in the attentuation equation, see SpotLight.

quadratic_attenuation: f32

The quadratic term in the attentuation equation, see SpotLight.

falloff_angle: f32

The directional attenuation of the light.

falloff_exponent: f32

A term in the directional attenuation equation of the light.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

The name of the XML element.

Parse an XML element into this type. In most cases, the parser will require with a debug_assert that the element to parse has name Self::NAME. Read more

Parse an XML element and return the data structure in a Box. This can be faster in some cases when the data structure is large. Read more

Parse a single required element from the given element iterator.

Parse an optional element from the given element iterator, using Self::NAME to determine if it is the correct type. Read more

Parse an optional boxed element from the given element iterator, using Self::NAME to determine if it is the correct type. Read more

Parse a list of elements from the given element iterator, as long as it continues yielding elements of name Self::NAME. Read more

Parse a list of elements from the given element iterator, as long as it continues yielding elements of name Self::NAME, and assert that the resulting list has length at least N. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.