pub struct SkyBox { /* private fields */ }
Expand description
Skybox is a huge box around camera. Each face has its own texture, when textures are properly made, there is no seams and you get good decoration which contains static skies and/or some other objects (mountains, buildings, etc.). Usually skyboxes used in outdoor scenes, however real use of it limited only by your imagination. Skybox will be drawn first, none of objects could be drawn before skybox.
Implementations§
Source§impl SkyBox
impl SkyBox
Sourcepub fn cubemap(&self) -> Option<TextureResource>
pub fn cubemap(&self) -> Option<TextureResource>
Returns cubemap texture
Sourcepub fn cubemap_ref(&self) -> Option<&TextureResource>
pub fn cubemap_ref(&self) -> Option<&TextureResource>
Returns cubemap texture
Sourcepub fn validate(&self) -> Result<(), SkyBoxError>
pub fn validate(&self) -> Result<(), SkyBoxError>
Validates input set of texture and checks if it possible to create a cube map from them. There are two main conditions for successful cube map creation:
- All textures must have same width and height, and width must be equal to height.
- All textures must have same pixel kind.
Sourcepub fn create_cubemap(&mut self) -> Result<(), SkyBoxError>
pub fn create_cubemap(&mut self) -> Result<(), SkyBoxError>
Creates a cubemap using provided faces. If some face has not been provided corresponding side will be black.
§Important notes.
It will fail if provided face’s kind is not TextureKind::Rectangle.
Sourcepub fn textures(&self) -> [Option<TextureResource>; 6]
pub fn textures(&self) -> [Option<TextureResource>; 6]
Returns slice with all textures, where: 0 - Left, 1 - Right, 2 - Top, 3 - Bottom 4 - Front, 5 - Back.
§Important notes.
These textures are not used for rendering! The renderer uses cube map made of these textures. Public access for these textures is needed in case you need to read internals of the textures.
Sourcepub fn set_left(
&mut self,
texture: Option<TextureResource>,
) -> Option<TextureResource>
pub fn set_left( &mut self, texture: Option<TextureResource>, ) -> Option<TextureResource>
Set new texture for the left side of the skybox.
Sourcepub fn left(&self) -> Option<TextureResource>
pub fn left(&self) -> Option<TextureResource>
Returns a texture that is used for left face of the cube map.
§Important notes.
This textures is not used for rendering! The renderer uses cube map made of face textures.
Sourcepub fn set_right(
&mut self,
texture: Option<TextureResource>,
) -> Option<TextureResource>
pub fn set_right( &mut self, texture: Option<TextureResource>, ) -> Option<TextureResource>
Set new texture for the right side of the skybox.
Sourcepub fn right(&self) -> Option<TextureResource>
pub fn right(&self) -> Option<TextureResource>
Returns a texture that is used for right face of the cube map.
§Important notes.
This textures is not used for rendering! The renderer uses cube map made of face textures.
Sourcepub fn set_top(
&mut self,
texture: Option<TextureResource>,
) -> Option<TextureResource>
pub fn set_top( &mut self, texture: Option<TextureResource>, ) -> Option<TextureResource>
Set new texture for the top side of the skybox.
Sourcepub fn top(&self) -> Option<TextureResource>
pub fn top(&self) -> Option<TextureResource>
Returns a texture that is used for top face of the cube map.
§Important notes.
This textures is not used for rendering! The renderer uses cube map made of face textures.
Sourcepub fn set_bottom(
&mut self,
texture: Option<TextureResource>,
) -> Option<TextureResource>
pub fn set_bottom( &mut self, texture: Option<TextureResource>, ) -> Option<TextureResource>
Set new texture for the bottom side of the skybox.
Sourcepub fn bottom(&self) -> Option<TextureResource>
pub fn bottom(&self) -> Option<TextureResource>
Returns a texture that is used for bottom face of the cube map.
§Important notes.
This textures is not used for rendering! The renderer uses cube map made of face textures.
Sourcepub fn set_front(
&mut self,
texture: Option<TextureResource>,
) -> Option<TextureResource>
pub fn set_front( &mut self, texture: Option<TextureResource>, ) -> Option<TextureResource>
Set new texture for the front side of the skybox.
Sourcepub fn front(&self) -> Option<TextureResource>
pub fn front(&self) -> Option<TextureResource>
Returns a texture that is used for front face of the cube map.
§Important notes.
This textures is not used for rendering! The renderer uses cube map made of face textures.
Sourcepub fn set_back(
&mut self,
texture: Option<TextureResource>,
) -> Option<TextureResource>
pub fn set_back( &mut self, texture: Option<TextureResource>, ) -> Option<TextureResource>
Set new texture for the back side of the skybox.
Sourcepub fn back(&self) -> Option<TextureResource>
pub fn back(&self) -> Option<TextureResource>
Returns a texture that is used for back face of the cube map.
§Important notes.
This textures is not used for rendering! The renderer uses cube map made of face textures.
Trait Implementations§
Source§impl Reflect for SkyBox
impl Reflect for SkyBox
fn source_path() -> &'static str
fn type_name(&self) -> &'static str
fn doc(&self) -> &'static str
Source§fn assembly_name(&self) -> &'static str
fn assembly_name(&self) -> &'static str
#[derive(Reflect)]
) to ensure that this method will return correct assembly
name. In other words - there’s no guarantee, that any implementation other than proc-macro
will return a correct name of the assembly. Alternatively, you can use env!("CARGO_PKG_NAME")
as an implementation.Source§fn type_assembly_name() -> &'static str
fn type_assembly_name() -> &'static str
#[derive(Reflect)]
) to ensure that this method will return correct assembly
name. In other words - there’s no guarantee, that any implementation other than proc-macro
will return a correct name of the assembly. Alternatively, you can use env!("CARGO_PKG_NAME")
as an implementation.fn fields_info(&self, func: &mut dyn FnMut(&[FieldInfo<'_, '_>]))
fn into_any(self: Box<Self>) -> Box<dyn Any>
fn set( &mut self, value: Box<dyn Reflect>, ) -> Result<Box<dyn Reflect>, Box<dyn Reflect>>
Source§fn set_field(
&mut self,
name: &str,
value: Box<dyn Reflect>,
func: &mut dyn FnMut(Result<Box<dyn Reflect>, Box<dyn Reflect>>),
)
fn set_field( &mut self, name: &str, value: Box<dyn Reflect>, func: &mut dyn FnMut(Result<Box<dyn Reflect>, Box<dyn Reflect>>), )
#[reflect(setter = ..)]
or falls back to
Reflect::field_mut
fn as_any(&self, func: &mut dyn FnMut(&dyn Any))
fn as_any_mut(&mut self, func: &mut dyn FnMut(&mut dyn Any))
fn as_reflect(&self, func: &mut dyn FnMut(&dyn Reflect))
fn as_reflect_mut(&mut self, func: &mut dyn FnMut(&mut dyn Reflect))
fn fields(&self, func: &mut dyn FnMut(&[&dyn Reflect]))
fn fields_mut(&mut self, func: &mut dyn FnMut(&mut [&mut dyn Reflect]))
fn field(&self, name: &str, func: &mut dyn FnMut(Option<&dyn Reflect>))
fn field_mut( &mut self, name: &str, func: &mut dyn FnMut(Option<&mut dyn Reflect>), )
fn as_array(&self, func: &mut dyn FnMut(Option<&(dyn ReflectArray + 'static)>))
fn as_array_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectArray + 'static)>), )
fn as_list(&self, func: &mut dyn FnMut(Option<&(dyn ReflectList + 'static)>))
fn as_list_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectList + 'static)>), )
fn as_inheritable_variable( &self, func: &mut dyn FnMut(Option<&(dyn ReflectInheritableVariable + 'static)>), )
fn as_inheritable_variable_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectInheritableVariable + 'static)>), )
fn as_hash_map( &self, func: &mut dyn FnMut(Option<&(dyn ReflectHashMap + 'static)>), )
fn as_hash_map_mut( &mut self, func: &mut dyn FnMut(Option<&mut (dyn ReflectHashMap + 'static)>), )
Source§impl Visit for SkyBox
impl Visit for SkyBox
Source§fn visit(&mut self, name: &str, visitor: &mut Visitor) -> VisitResult
fn visit(&mut self, name: &str, visitor: &mut Visitor) -> VisitResult
impl Eq for SkyBox
impl StructuralPartialEq for SkyBox
Auto Trait Implementations§
impl Freeze for SkyBox
impl !RefUnwindSafe for SkyBox
impl Send for SkyBox
impl Sync for SkyBox
impl Unpin for SkyBox
impl !UnwindSafe for SkyBox
Blanket Implementations§
Source§impl<T> AsyncTaskResult for T
impl<T> AsyncTaskResult for T
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
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>
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>
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)
&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)
&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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Any
. Could be used to downcast a trait object
to a particular type.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Any
. Could be used to downcast a trait object
to a particular type.fn into_any(self: Box<T>) -> Box<dyn Any>
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<T> FieldValue for Twhere
T: 'static,
impl<T> FieldValue for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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> ⓘ
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> ⓘ
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> MessageData for T
impl<T> MessageData for T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian()
.Source§impl<T> ReflectBase for Twhere
T: Reflect,
impl<T> ReflectBase for Twhere
T: Reflect,
fn as_any_raw(&self) -> &(dyn Any + 'static)
fn as_any_raw_mut(&mut self) -> &mut (dyn Any + 'static)
Source§impl<T> ResolvePath for Twhere
T: Reflect,
impl<T> ResolvePath for Twhere
T: Reflect,
fn resolve_path<'p>( &self, path: &'p str, func: &mut dyn FnMut(Result<&(dyn Reflect + 'static), ReflectPathError<'p>>), )
fn resolve_path_mut<'p>( &mut self, path: &'p str, func: &mut dyn FnMut(Result<&mut (dyn Reflect + 'static), ReflectPathError<'p>>), )
fn get_resolve_path<'p, T>(
&self,
path: &'p str,
func: &mut dyn FnMut(Result<&T, ReflectPathError<'p>>),
)where
T: Reflect,
fn get_resolve_path_mut<'p, T>(
&mut self,
path: &'p str,
func: &mut dyn FnMut(Result<&mut T, ReflectPathError<'p>>),
)where
T: Reflect,
Source§impl<T> ScriptMessagePayload for T
impl<T> ScriptMessagePayload for T
Source§fn as_any_ref(&self) -> &(dyn Any + 'static)
fn as_any_ref(&self) -> &(dyn Any + 'static)
self
as &dyn Any
Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
self
as &dyn Any
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>
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
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
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.