Struct bevy::render::view::RenderLayers
source · pub struct RenderLayers(/* private fields */);
Expand description
Describes which rendering layers an entity belongs to.
Cameras with this component will only render entities with intersecting layers.
Entities may belong to one or more layers, or no layer at all.
The Default
instance of RenderLayers
contains layer 0
, the first layer.
An entity with this component without any layers is invisible.
Entities without this component belong to layer 0
.
Implementations§
source§impl RenderLayers
impl RenderLayers
sourcepub const fn layer(n: usize) -> RenderLayers
pub const fn layer(n: usize) -> RenderLayers
Create a new RenderLayers
belonging to the given layer.
sourcepub const fn none() -> RenderLayers
pub const fn none() -> RenderLayers
Create a new RenderLayers
that belongs to no layers.
This is distinct from RenderLayers::default
, which belongs to the first layer.
sourcepub fn from_layers(layers: &[usize]) -> RenderLayers
pub fn from_layers(layers: &[usize]) -> RenderLayers
Create a RenderLayers
from a list of layers.
sourcepub fn with(self, layer: usize) -> RenderLayers
pub fn with(self, layer: usize) -> RenderLayers
Add the given layer.
This may be called multiple times to allow an entity to belong to multiple rendering layers.
sourcepub fn without(self, layer: usize) -> RenderLayers
pub fn without(self, layer: usize) -> RenderLayers
Removes the given rendering layer.
sourcepub fn intersects(&self, other: &RenderLayers) -> bool
pub fn intersects(&self, other: &RenderLayers) -> bool
Determine if a RenderLayers
intersects another.
RenderLayers
s intersect if they share any common layers.
A RenderLayers
with no layers will not match any other
RenderLayers
, even another with no layers.
sourcepub fn intersection(&self, other: &RenderLayers) -> RenderLayers
pub fn intersection(&self, other: &RenderLayers) -> RenderLayers
Returns the set of layers shared by two instances of RenderLayers
.
This corresponds to the self & other
operation.
sourcepub fn union(&self, other: &RenderLayers) -> RenderLayers
pub fn union(&self, other: &RenderLayers) -> RenderLayers
Returns all layers included in either instance of RenderLayers
.
This corresponds to the self | other
operation.
sourcepub fn symmetric_difference(&self, other: &RenderLayers) -> RenderLayers
pub fn symmetric_difference(&self, other: &RenderLayers) -> RenderLayers
Returns all layers included in exactly one of the instances of RenderLayers
.
This corresponds to the “exclusive or” (XOR) operation: self ^ other
.
Trait Implementations§
source§impl BitAnd for RenderLayers
impl BitAnd for RenderLayers
§type Output = RenderLayers
type Output = RenderLayers
&
operator.source§fn bitand(self, rhs: RenderLayers) -> <RenderLayers as BitAnd>::Output
fn bitand(self, rhs: RenderLayers) -> <RenderLayers as BitAnd>::Output
&
operation. Read moresource§impl BitOr for RenderLayers
impl BitOr for RenderLayers
§type Output = RenderLayers
type Output = RenderLayers
|
operator.source§fn bitor(self, rhs: RenderLayers) -> <RenderLayers as BitOr>::Output
fn bitor(self, rhs: RenderLayers) -> <RenderLayers as BitOr>::Output
|
operation. Read moresource§impl BitXor for RenderLayers
impl BitXor for RenderLayers
§type Output = RenderLayers
type Output = RenderLayers
^
operator.source§fn bitxor(self, rhs: RenderLayers) -> <RenderLayers as BitXor>::Output
fn bitxor(self, rhs: RenderLayers) -> <RenderLayers as BitXor>::Output
^
operation. Read moresource§impl Clone for RenderLayers
impl Clone for RenderLayers
source§fn clone(&self) -> RenderLayers
fn clone(&self) -> RenderLayers
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Component for RenderLayers
impl Component for RenderLayers
source§const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
source§fn register_component_hooks(_hooks: &mut ComponentHooks)
fn register_component_hooks(_hooks: &mut ComponentHooks)
ComponentHooks
.source§impl Debug for RenderLayers
impl Debug for RenderLayers
source§impl Default for &RenderLayers
impl Default for &RenderLayers
source§fn default() -> &RenderLayers
fn default() -> &RenderLayers
source§impl Default for RenderLayers
impl Default for RenderLayers
source§fn default() -> RenderLayers
fn default() -> RenderLayers
By default, this structure includes layer 0
, which represents the first layer.
This is distinct from RenderLayers::none
, which doesn’t belong to any layers.
source§impl FromIterator<usize> for RenderLayers
impl FromIterator<usize> for RenderLayers
source§fn from_iter<T>(i: T) -> RenderLayerswhere
T: IntoIterator<Item = usize>,
fn from_iter<T>(i: T) -> RenderLayerswhere
T: IntoIterator<Item = usize>,
source§impl FromReflect for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
impl FromReflect for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
source§fn from_reflect(reflect: &(dyn Reflect + 'static)) -> Option<RenderLayers>
fn from_reflect(reflect: &(dyn Reflect + 'static)) -> Option<RenderLayers>
Self
from a reflected value.source§fn take_from_reflect(
reflect: Box<dyn Reflect>
) -> Result<Self, Box<dyn Reflect>>
fn take_from_reflect( reflect: Box<dyn Reflect> ) -> Result<Self, Box<dyn Reflect>>
Self
using,
constructing the value using from_reflect
if that fails. Read moresource§impl GetTypeRegistration for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
impl GetTypeRegistration for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
source§fn get_type_registration() -> TypeRegistration
fn get_type_registration() -> TypeRegistration
TypeRegistration
for this type.source§fn register_type_dependencies(registry: &mut TypeRegistry)
fn register_type_dependencies(registry: &mut TypeRegistry)
source§impl Ord for RenderLayers
impl Ord for RenderLayers
source§fn cmp(&self, other: &RenderLayers) -> Ordering
fn cmp(&self, other: &RenderLayers) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for RenderLayers
impl PartialEq for RenderLayers
source§fn eq(&self, other: &RenderLayers) -> bool
fn eq(&self, other: &RenderLayers) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for RenderLayers
impl PartialOrd for RenderLayers
source§fn partial_cmp(&self, other: &RenderLayers) -> Option<Ordering>
fn partial_cmp(&self, other: &RenderLayers) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl Reflect for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
impl Reflect for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
source§fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
source§fn into_any(self: Box<RenderLayers>) -> Box<dyn Any>
fn into_any(self: Box<RenderLayers>) -> Box<dyn Any>
Box<dyn Any>
.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut dyn Any
.source§fn into_reflect(self: Box<RenderLayers>) -> Box<dyn Reflect>
fn into_reflect(self: Box<RenderLayers>) -> Box<dyn Reflect>
source§fn as_reflect(&self) -> &(dyn Reflect + 'static)
fn as_reflect(&self) -> &(dyn Reflect + 'static)
source§fn as_reflect_mut(&mut self) -> &mut (dyn Reflect + 'static)
fn as_reflect_mut(&mut self) -> &mut (dyn Reflect + 'static)
source§fn clone_value(&self) -> Box<dyn Reflect>
fn clone_value(&self) -> Box<dyn Reflect>
Reflect
trait object. Read moresource§fn set(&mut self, value: Box<dyn Reflect>) -> Result<(), Box<dyn Reflect>>
fn set(&mut self, value: Box<dyn Reflect>) -> Result<(), Box<dyn Reflect>>
source§fn reflect_kind(&self) -> ReflectKind
fn reflect_kind(&self) -> ReflectKind
source§fn reflect_ref(&self) -> ReflectRef<'_>
fn reflect_ref(&self) -> ReflectRef<'_>
source§fn reflect_mut(&mut self) -> ReflectMut<'_>
fn reflect_mut(&mut self) -> ReflectMut<'_>
source§fn reflect_owned(self: Box<RenderLayers>) -> ReflectOwned
fn reflect_owned(self: Box<RenderLayers>) -> ReflectOwned
source§fn reflect_partial_eq(&self, value: &(dyn Reflect + 'static)) -> Option<bool>
fn reflect_partial_eq(&self, value: &(dyn Reflect + 'static)) -> Option<bool>
source§fn apply(&mut self, value: &(dyn Reflect + 'static))
fn apply(&mut self, value: &(dyn Reflect + 'static))
source§fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
source§fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
source§fn serializable(&self) -> Option<Serializable<'_>>
fn serializable(&self) -> Option<Serializable<'_>>
source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
source§impl TupleStruct for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
impl TupleStruct for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
source§fn field(&self, index: usize) -> Option<&(dyn Reflect + 'static)>
fn field(&self, index: usize) -> Option<&(dyn Reflect + 'static)>
index
as a
&dyn Reflect
.source§fn field_mut(&mut self, index: usize) -> Option<&mut (dyn Reflect + 'static)>
fn field_mut(&mut self, index: usize) -> Option<&mut (dyn Reflect + 'static)>
index
as a &mut dyn Reflect
.source§fn iter_fields(&self) -> TupleStructFieldIter<'_> ⓘ
fn iter_fields(&self) -> TupleStructFieldIter<'_> ⓘ
source§fn clone_dynamic(&self) -> DynamicTupleStruct
fn clone_dynamic(&self) -> DynamicTupleStruct
DynamicTupleStruct
.source§impl TypePath for RenderLayers
impl TypePath for RenderLayers
source§fn type_path() -> &'static str
fn type_path() -> &'static str
source§fn short_type_path() -> &'static str
fn short_type_path() -> &'static str
source§fn type_ident() -> Option<&'static str>
fn type_ident() -> Option<&'static str>
source§fn crate_name() -> Option<&'static str>
fn crate_name() -> Option<&'static str>
source§impl Typed for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
impl Typed for RenderLayerswhere
RenderLayers: Any + Send + Sync,
SmallVec<[u64; 1]>: FromReflect + TypePath + RegisterForReflection,
impl Eq for RenderLayers
impl StructuralPartialEq for RenderLayers
Auto Trait Implementations§
impl Freeze for RenderLayers
impl RefUnwindSafe for RenderLayers
impl Send for RenderLayers
impl Sync for RenderLayers
impl Unpin for RenderLayers
impl UnwindSafe for RenderLayers
Blanket Implementations§
source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.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<C> Bundle for Cwhere
C: Component,
impl<C> Bundle for Cwhere
C: Component,
fn component_ids( components: &mut Components, storages: &mut Storages, ids: &mut impl FnMut(ComponentId) )
unsafe fn from_components<T, F>(ctx: &mut T, func: &mut F) -> C
source§fn get_component_ids(
components: &Components,
ids: &mut impl FnMut(Option<ComponentId>)
)
fn get_component_ids( components: &Components, ids: &mut impl FnMut(Option<ComponentId>) )
source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
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> DowncastSync for T
impl<T> DowncastSync for T
source§impl<C> DynamicBundle for Cwhere
C: Component,
impl<C> DynamicBundle for Cwhere
C: Component,
fn get_components(self, func: &mut impl FnMut(StorageType, OwningPtr<'_>))
source§impl<T> DynamicTypePath for Twhere
T: TypePath,
impl<T> DynamicTypePath for Twhere
T: TypePath,
source§fn reflect_type_path(&self) -> &str
fn reflect_type_path(&self) -> &str
TypePath::type_path
.source§fn reflect_short_type_path(&self) -> &str
fn reflect_short_type_path(&self) -> &str
source§fn reflect_type_ident(&self) -> Option<&str>
fn reflect_type_ident(&self) -> Option<&str>
TypePath::type_ident
.source§fn reflect_crate_name(&self) -> Option<&str>
fn reflect_crate_name(&self) -> Option<&str>
TypePath::crate_name
.source§fn reflect_module_path(&self) -> Option<&str>
fn reflect_module_path(&self) -> Option<&str>
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Self
using data from the given World
.source§impl<T> GetPath for T
impl<T> GetPath for T
source§fn reflect_path<'p>(
&self,
path: impl ReflectPath<'p>
) -> Result<&(dyn Reflect + 'static), ReflectPathError<'p>>
fn reflect_path<'p>( &self, path: impl ReflectPath<'p> ) -> Result<&(dyn Reflect + 'static), ReflectPathError<'p>>
path
. Read moresource§fn reflect_path_mut<'p>(
&mut self,
path: impl ReflectPath<'p>
) -> Result<&mut (dyn Reflect + 'static), ReflectPathError<'p>>
fn reflect_path_mut<'p>( &mut self, path: impl ReflectPath<'p> ) -> Result<&mut (dyn Reflect + 'static), ReflectPathError<'p>>
path
. Read moresource§fn path<'p, T>(
&self,
path: impl ReflectPath<'p>
) -> Result<&T, ReflectPathError<'p>>where
T: Reflect,
fn path<'p, T>(
&self,
path: impl ReflectPath<'p>
) -> Result<&T, ReflectPathError<'p>>where
T: Reflect,
path
. Read moresource§fn path_mut<'p, T>(
&mut self,
path: impl ReflectPath<'p>
) -> Result<&mut T, ReflectPathError<'p>>where
T: Reflect,
fn path_mut<'p, T>(
&mut self,
path: impl ReflectPath<'p>
) -> Result<&mut T, ReflectPathError<'p>>where
T: Reflect,
path
. Read more