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
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
impl RefUnwindSafe for SpotLight
impl UnwindSafe for SpotLight
Blanket Implementations
Mutably borrows from an owned value. Read more