pub struct ColorGrading {
pub global: ColorGradingGlobal,
pub shadows: ColorGradingSection,
pub midtones: ColorGradingSection,
pub highlights: ColorGradingSection,
}
Expand description
Configures filmic color grading parameters to adjust the image appearance.
Color grading is applied just before tonemapping for a given
Camera
entity, with the sole exception of the
post_saturation
value in ColorGradingGlobal
, which is applied after
tonemapping.
Fields§
§global: ColorGradingGlobal
Filmic color grading values applied to the image as a whole (as opposed to individual sections, like shadows and highlights).
shadows: ColorGradingSection
Color grading values that are applied to the darker parts of the image.
The cutoff points can be customized with the
ColorGradingGlobal::midtones_range
field.
midtones: ColorGradingSection
Color grading values that are applied to the parts of the image with intermediate brightness.
The cutoff points can be customized with the
ColorGradingGlobal::midtones_range
field.
highlights: ColorGradingSection
Color grading values that are applied to the lighter parts of the image.
The cutoff points can be customized with the
ColorGradingGlobal::midtones_range
field.
Implementations§
Source§impl ColorGrading
impl ColorGrading
Sourcepub fn with_identical_sections(
global: ColorGradingGlobal,
section: ColorGradingSection,
) -> ColorGrading
pub fn with_identical_sections( global: ColorGradingGlobal, section: ColorGradingSection, ) -> ColorGrading
Creates a new ColorGrading
instance in which shadows, midtones, and
highlights all have the same set of color grading values.
Examples found in repository?
541 fn basic_scene_recommendation(method: Tonemapping) -> ColorGrading {
542 match method {
543 Tonemapping::Reinhard | Tonemapping::ReinhardLuminance => ColorGrading {
544 global: ColorGradingGlobal {
545 exposure: 0.5,
546 ..default()
547 },
548 ..default()
549 },
550 Tonemapping::AcesFitted => ColorGrading {
551 global: ColorGradingGlobal {
552 exposure: 0.35,
553 ..default()
554 },
555 ..default()
556 },
557 Tonemapping::AgX => ColorGrading::with_identical_sections(
558 ColorGradingGlobal {
559 exposure: -0.2,
560 post_saturation: 1.1,
561 ..default()
562 },
563 ColorGradingSection {
564 saturation: 1.1,
565 ..default()
566 },
567 ),
568 _ => ColorGrading::default(),
569 }
570 }
Sourcepub fn all_sections(&self) -> impl Iterator<Item = &ColorGradingSection>
pub fn all_sections(&self) -> impl Iterator<Item = &ColorGradingSection>
Returns an iterator that visits the shadows, midtones, and highlights sections, in that order.
Sourcepub fn all_sections_mut(
&mut self,
) -> impl Iterator<Item = &mut ColorGradingSection>
pub fn all_sections_mut( &mut self, ) -> impl Iterator<Item = &mut ColorGradingSection>
Applies the given mutating function to the shadows, midtones, and highlights sections, in that order.
Returns an array composed of the results of such evaluation, in that order.
Examples found in repository?
333fn update_color_grading_settings(
334 keys: Res<ButtonInput<KeyCode>>,
335 time: Res<Time>,
336 mut per_method_settings: ResMut<PerMethodSettings>,
337 tonemapping: Single<&Tonemapping>,
338 current_scene: Res<CurrentScene>,
339 mut selected_parameter: ResMut<SelectedParameter>,
340) {
341 let color_grading = per_method_settings.settings.get_mut(*tonemapping).unwrap();
342 let mut dt = time.delta_secs() * 0.25;
343 if keys.pressed(KeyCode::ArrowLeft) {
344 dt = -dt;
345 }
346
347 if keys.just_pressed(KeyCode::ArrowDown) {
348 selected_parameter.next();
349 }
350 if keys.just_pressed(KeyCode::ArrowUp) {
351 selected_parameter.prev();
352 }
353 if keys.pressed(KeyCode::ArrowLeft) || keys.pressed(KeyCode::ArrowRight) {
354 match selected_parameter.value {
355 0 => {
356 color_grading.global.exposure += dt;
357 }
358 1 => {
359 color_grading
360 .all_sections_mut()
361 .for_each(|section| section.gamma += dt);
362 }
363 2 => {
364 color_grading
365 .all_sections_mut()
366 .for_each(|section| section.saturation += dt);
367 }
368 3 => {
369 color_grading.global.post_saturation += dt;
370 }
371 _ => {}
372 }
373 }
374
375 if keys.just_pressed(KeyCode::Space) {
376 for (_, grading) in per_method_settings.settings.iter_mut() {
377 *grading = ColorGrading::default();
378 }
379 }
380
381 if keys.just_pressed(KeyCode::Enter) && current_scene.0 == 1 {
382 for (mapper, grading) in per_method_settings.settings.iter_mut() {
383 *grading = PerMethodSettings::basic_scene_recommendation(*mapper);
384 }
385 }
386}
Trait Implementations§
Source§impl Clone for ColorGrading
impl Clone for ColorGrading
Source§fn clone(&self) -> ColorGrading
fn clone(&self) -> ColorGrading
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Component for ColorGrading
impl Component for ColorGrading
Source§const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
const STORAGE_TYPE: StorageType = bevy_ecs::component::StorageType::Table
Source§type Mutability = Mutable
type Mutability = Mutable
Component<Mutability = Mutable>
],
while immutable components will instead have [Component<Mutability = Immutable>
]. Read moreSource§fn register_required_components(
requiree: ComponentId,
components: &mut ComponentsRegistrator<'_>,
required_components: &mut RequiredComponents,
inheritance_depth: u16,
recursion_check_stack: &mut Vec<ComponentId>,
)
fn register_required_components( requiree: ComponentId, components: &mut ComponentsRegistrator<'_>, required_components: &mut RequiredComponents, inheritance_depth: u16, recursion_check_stack: &mut Vec<ComponentId>, )
Source§fn clone_behavior() -> ComponentCloneBehavior
fn clone_behavior() -> ComponentCloneBehavior
Source§fn register_component_hooks(hooks: &mut ComponentHooks)
fn register_component_hooks(hooks: &mut ComponentHooks)
Component::on_add
, etc.)ComponentHooks
.Source§fn on_add() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_add() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
Source§fn on_insert() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_insert() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
Source§fn on_replace() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_replace() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
Source§fn on_remove() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_remove() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
Source§fn on_despawn() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
fn on_despawn() -> Option<for<'w> fn(DeferredWorld<'w>, HookContext)>
Source§fn map_entities<E>(_this: &mut Self, _mapper: &mut E)where
E: EntityMapper,
fn map_entities<E>(_this: &mut Self, _mapper: &mut E)where
E: EntityMapper,
EntityMapper
. This is used to remap entities in contexts like scenes and entity cloning.
When deriving Component
, this is populated by annotating fields containing entities with #[entities]
Read moreSource§impl Debug for ColorGrading
impl Debug for ColorGrading
Source§impl Default for ColorGrading
impl Default for ColorGrading
Source§fn default() -> ColorGrading
fn default() -> ColorGrading
Source§impl From<ColorGrading> for ColorGradingUniform
impl From<ColorGrading> for ColorGradingUniform
Source§fn from(component: ColorGrading) -> ColorGradingUniform
fn from(component: ColorGrading) -> ColorGradingUniform
Source§impl FromArg for &'static ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl FromArg for &'static ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§impl FromArg for &'static mut ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl FromArg for &'static mut ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§impl FromArg for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl FromArg for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§impl FromReflect for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl FromReflect for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn from_reflect(
reflect: &(dyn PartialReflect + 'static),
) -> Option<ColorGrading>
fn from_reflect( reflect: &(dyn PartialReflect + 'static), ) -> Option<ColorGrading>
Self
from a reflected value.Source§fn take_from_reflect(
reflect: Box<dyn PartialReflect>,
) -> Result<Self, Box<dyn PartialReflect>>
fn take_from_reflect( reflect: Box<dyn PartialReflect>, ) -> Result<Self, Box<dyn PartialReflect>>
Self
using,
constructing the value using from_reflect
if that fails. Read moreSource§impl GetOwnership for &ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl GetOwnership for &ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§impl GetOwnership for &mut ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl GetOwnership for &mut ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§impl GetOwnership for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl GetOwnership for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§impl GetTypeRegistration for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl GetTypeRegistration for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + 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 IntoReturn for &ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl IntoReturn for &ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn into_return<'into_return>(self) -> Return<'into_return>where
&ColorGrading: 'into_return,
fn into_return<'into_return>(self) -> Return<'into_return>where
&ColorGrading: 'into_return,
Source§impl IntoReturn for &mut ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl IntoReturn for &mut ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn into_return<'into_return>(self) -> Return<'into_return>where
&mut ColorGrading: 'into_return,
fn into_return<'into_return>(self) -> Return<'into_return>where
&mut ColorGrading: 'into_return,
Source§impl IntoReturn for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl IntoReturn for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn into_return<'into_return>(self) -> Return<'into_return>where
ColorGrading: 'into_return,
fn into_return<'into_return>(self) -> Return<'into_return>where
ColorGrading: 'into_return,
Source§impl PartialReflect for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl PartialReflect for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
fn get_represented_type_info(&self) -> Option<&'static TypeInfo>
Source§fn try_apply(
&mut self,
value: &(dyn PartialReflect + 'static),
) -> Result<(), ApplyError>
fn try_apply( &mut self, value: &(dyn PartialReflect + 'static), ) -> Result<(), ApplyError>
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<ColorGrading>) -> ReflectOwned
fn reflect_owned(self: Box<ColorGrading>) -> ReflectOwned
Source§fn try_into_reflect(
self: Box<ColorGrading>,
) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
fn try_into_reflect( self: Box<ColorGrading>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
Source§fn try_as_reflect(&self) -> Option<&(dyn Reflect + 'static)>
fn try_as_reflect(&self) -> Option<&(dyn Reflect + 'static)>
Source§fn try_as_reflect_mut(&mut self) -> Option<&mut (dyn Reflect + 'static)>
fn try_as_reflect_mut(&mut self) -> Option<&mut (dyn Reflect + 'static)>
Source§fn into_partial_reflect(self: Box<ColorGrading>) -> Box<dyn PartialReflect>
fn into_partial_reflect(self: Box<ColorGrading>) -> Box<dyn PartialReflect>
Source§fn as_partial_reflect(&self) -> &(dyn PartialReflect + 'static)
fn as_partial_reflect(&self) -> &(dyn PartialReflect + 'static)
Source§fn as_partial_reflect_mut(&mut self) -> &mut (dyn PartialReflect + 'static)
fn as_partial_reflect_mut(&mut self) -> &mut (dyn PartialReflect + 'static)
Source§fn reflect_partial_eq(
&self,
value: &(dyn PartialReflect + 'static),
) -> Option<bool>
fn reflect_partial_eq( &self, value: &(dyn PartialReflect + 'static), ) -> Option<bool>
Source§fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Source§fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>
fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>
Self
using reflection. Read moreSource§fn apply(&mut self, value: &(dyn PartialReflect + 'static))
fn apply(&mut self, value: &(dyn PartialReflect + 'static))
Source§fn clone_value(&self) -> Box<dyn PartialReflect>
fn clone_value(&self) -> Box<dyn PartialReflect>
reflect_clone
. To convert reflected values to dynamic ones, use to_dynamic
.Self
into its dynamic representation. Read moreSource§fn to_dynamic(&self) -> Box<dyn PartialReflect>
fn to_dynamic(&self) -> Box<dyn PartialReflect>
Source§fn reflect_hash(&self) -> Option<u64>
fn reflect_hash(&self) -> Option<u64>
Source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
Source§impl Reflect for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Reflect for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn into_any(self: Box<ColorGrading>) -> Box<dyn Any>
fn into_any(self: Box<ColorGrading>) -> Box<dyn Any>
Box<dyn Any>
. Read moreSource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut dyn Any
. Read moreSource§fn into_reflect(self: Box<ColorGrading>) -> Box<dyn Reflect>
fn into_reflect(self: Box<ColorGrading>) -> 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§impl Struct for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Struct for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn field(&self, name: &str) -> Option<&(dyn PartialReflect + 'static)>
fn field(&self, name: &str) -> Option<&(dyn PartialReflect + 'static)>
name
as a &dyn PartialReflect
.Source§fn field_mut(
&mut self,
name: &str,
) -> Option<&mut (dyn PartialReflect + 'static)>
fn field_mut( &mut self, name: &str, ) -> Option<&mut (dyn PartialReflect + 'static)>
name
as a
&mut dyn PartialReflect
.Source§fn field_at(&self, index: usize) -> Option<&(dyn PartialReflect + 'static)>
fn field_at(&self, index: usize) -> Option<&(dyn PartialReflect + 'static)>
index
as a
&dyn PartialReflect
.Source§fn field_at_mut(
&mut self,
index: usize,
) -> Option<&mut (dyn PartialReflect + 'static)>
fn field_at_mut( &mut self, index: usize, ) -> Option<&mut (dyn PartialReflect + 'static)>
index
as a &mut dyn PartialReflect
.Source§fn name_at(&self, index: usize) -> Option<&str>
fn name_at(&self, index: usize) -> Option<&str>
index
.Source§fn iter_fields(&self) -> FieldIter<'_> ⓘ
fn iter_fields(&self) -> FieldIter<'_> ⓘ
fn to_dynamic_struct(&self) -> DynamicStruct
Source§fn clone_dynamic(&self) -> DynamicStruct
fn clone_dynamic(&self) -> DynamicStruct
to_dynamic_struct
insteadDynamicStruct
.Source§fn get_represented_struct_info(&self) -> Option<&'static StructInfo>
fn get_represented_struct_info(&self) -> Option<&'static StructInfo>
None
if TypeInfo
is not available.Source§impl TypePath for ColorGrading
impl TypePath for ColorGrading
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 ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Typed for ColorGradingwhere
ColorGrading: Any + Send + Sync,
ColorGradingGlobal: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
ColorGradingSection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Auto Trait Implementations§
impl Freeze for ColorGrading
impl RefUnwindSafe for ColorGrading
impl Send for ColorGrading
impl Sync for ColorGrading
impl Unpin for ColorGrading
impl UnwindSafe for ColorGrading
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 ComponentsRegistrator<'_>, ids: &mut impl FnMut(ComponentId), )
Source§fn register_required_components(
components: &mut ComponentsRegistrator<'_>,
required_components: &mut RequiredComponents,
)
fn register_required_components( components: &mut ComponentsRegistrator<'_>, required_components: &mut RequiredComponents, )
Bundle
.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<C> BundleFromComponents for Cwhere
C: Component,
impl<C> BundleFromComponents for Cwhere
C: Component,
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>
, which can then be
downcast
into Box<dyn 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>
, which 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 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> DowncastSend for T
impl<T> DowncastSend for T
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<'_>), ) -> <C as DynamicBundle>::Effect
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<T> DynamicTyped for Twhere
T: Typed,
impl<T> DynamicTyped for Twhere
T: Typed,
Source§fn reflect_type_info(&self) -> &'static TypeInfo
fn reflect_type_info(&self) -> &'static TypeInfo
Typed::type_info
.Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.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
Creates Self
using default()
.
Source§impl<S> GetField for Swhere
S: Struct,
impl<S> GetField for Swhere
S: Struct,
Source§impl<T> GetPath for T
impl<T> GetPath for T
Source§fn reflect_path<'p>(
&self,
path: impl ReflectPath<'p>,
) -> Result<&(dyn PartialReflect + 'static), ReflectPathError<'p>>
fn reflect_path<'p>( &self, path: impl ReflectPath<'p>, ) -> Result<&(dyn PartialReflect + 'static), ReflectPathError<'p>>
path
. Read moreSource§fn reflect_path_mut<'p>(
&mut self,
path: impl ReflectPath<'p>,
) -> Result<&mut (dyn PartialReflect + 'static), ReflectPathError<'p>>
fn reflect_path_mut<'p>( &mut self, path: impl ReflectPath<'p>, ) -> Result<&mut (dyn PartialReflect + '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 moreSource§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<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.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> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.