pub struct Light {
pub light_type: LightType,
pub properties: ValueContainer,
pub active: bool,
}Fields§
§light_type: LightType§properties: ValueContainer§active: boolImplementations§
Source§impl Light
impl Light
pub fn new(light_type: LightType) -> Light
Sourcepub fn with_position(self, position: Vec3<f32>) -> Light
pub fn with_position(self, position: Vec3<f32>) -> Light
Set the position with the builder pattern.
Sourcepub fn with_color(self, color: [f32; 3]) -> Light
pub fn with_color(self, color: [f32; 3]) -> Light
Set the color with the builder pattern.
Sourcepub fn with_intensity(self, intensity: f32) -> Light
pub fn with_intensity(self, intensity: f32) -> Light
Set the intensity with the builder pattern.
Sourcepub fn with_start_distance(self, start: f32) -> Light
pub fn with_start_distance(self, start: f32) -> Light
Set the start distance with the builder pattern.
Sourcepub fn with_end_distance(self, end: f32) -> Light
pub fn with_end_distance(self, end: f32) -> Light
Set the end distance with the builder pattern.
Sourcepub fn with_flicker(self, flicker: f32) -> Light
pub fn with_flicker(self, flicker: f32) -> Light
Set the flicker with the builder pattern.
Sourcepub fn get_intensity(&self) -> f32
pub fn get_intensity(&self) -> f32
Helper: get intensity (defaults to 1.0 if not found)
Sourcepub fn get_start_distance(&self) -> f32
pub fn get_start_distance(&self) -> f32
Helper: get start distance (defaults to 3.0 if not found)
Sourcepub fn get_end_distance(&self) -> f32
pub fn get_end_distance(&self) -> f32
Helper: get end distance (defaults to 5.0 if not found)
Sourcepub fn get_flicker(&self) -> f32
pub fn get_flicker(&self) -> f32
Helper: get flicker
Sourcepub fn position_2d(&self) -> Vec2<f32>
pub fn position_2d(&self) -> Vec2<f32>
Returns the position of the light in 2D (x, z)
Sourcepub fn compile(&self) -> CompiledLight
pub fn compile(&self) -> CompiledLight
Loads and caches all the parameters from the value container into a CompiledLight.
Sourcepub fn set_position(&mut self, position: Vec3<f32>)
pub fn set_position(&mut self, position: Vec3<f32>)
Set the position of the light
Sourcepub fn set_intensity(&mut self, new_intensity: f32)
pub fn set_intensity(&mut self, new_intensity: f32)
Sets the intensity of the light
Sourcepub fn set_start_distance(&mut self, new_start_distance: f32)
pub fn set_start_distance(&mut self, new_start_distance: f32)
Sets the start distance (for Point or Spot)
Sourcepub fn set_end_distance(&mut self, new_end_distance: f32)
pub fn set_end_distance(&mut self, new_end_distance: f32)
Sets the end distance (for Point or Spot)
Sourcepub fn set_flicker(&mut self, flicker: f32)
pub fn set_flicker(&mut self, flicker: f32)
Set flicker frequency and amplitude
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Light
impl<'de> Deserialize<'de> for Light
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Light, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Light, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for Light
impl Serialize for Light
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for Light
Auto Trait Implementations§
impl Freeze for Light
impl RefUnwindSafe for Light
impl Send for Light
impl Sync for Light
impl Unpin for Light
impl UnsafeUnpin for Light
impl UnwindSafe for Light
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.