Struct bevy::animation::prelude::AnimationTransitions
source · pub struct AnimationTransitions { /* private fields */ }Expand description
Manages fade-out of animation blend factors, allowing for smooth transitions between animations.
To use this component, place it on the same entity as the
AnimationPlayer and bevy_asset::Handle<AnimationGraph>. It’ll take
responsibility for adjusting the weight on the ActiveAnimation in order
to fade out animations smoothly.
When using an AnimationTransitions component, you should play all
animations through the AnimationTransitions::play method, rather than by
directly manipulating the AnimationPlayer. Playing animations through
the AnimationPlayer directly will cause the AnimationTransitions
component to get confused about which animation is the “main” animation, and
transitions will usually be incorrect as a result.
Implementations§
source§impl AnimationTransitions
impl AnimationTransitions
sourcepub fn new() -> AnimationTransitions
pub fn new() -> AnimationTransitions
Creates a new AnimationTransitions component, ready to be added to
an entity with an AnimationPlayer.
sourcepub fn play<'p>(
&mut self,
player: &'p mut AnimationPlayer,
new_animation: NodeIndex,
transition_duration: Duration
) -> &'p mut ActiveAnimation
pub fn play<'p>( &mut self, player: &'p mut AnimationPlayer, new_animation: NodeIndex, transition_duration: Duration ) -> &'p mut ActiveAnimation
Plays a new animation on the given AnimationPlayer, fading out any
existing animations that were already playing over the
transition_duration.
Pass Duration::ZERO to instantly switch to a new animation, avoiding
any transition.
sourcepub fn get_main_animation(&self) -> Option<NodeIndex>
pub fn get_main_animation(&self) -> Option<NodeIndex>
Obtain the currently playing main animation.
Trait Implementations§
source§impl Clone for AnimationTransitions
impl Clone for AnimationTransitions
source§fn clone(&self) -> AnimationTransitions
fn clone(&self) -> AnimationTransitions
source§fn clone_from(&mut self, source: &AnimationTransitions)
fn clone_from(&mut self, source: &AnimationTransitions)
source. Read moresource§impl Component for AnimationTransitions
impl Component for AnimationTransitions
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 Default for AnimationTransitions
impl Default for AnimationTransitions
source§fn default() -> AnimationTransitions
fn default() -> AnimationTransitions
source§impl FromReflect for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
impl FromReflect for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
source§fn from_reflect(
reflect: &(dyn Reflect + 'static)
) -> Option<AnimationTransitions>
fn from_reflect( reflect: &(dyn Reflect + 'static) ) -> Option<AnimationTransitions>
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 AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
impl GetTypeRegistration for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: 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 Reflect for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
impl Reflect for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: 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<AnimationTransitions>) -> Box<dyn Any>
fn into_any(self: Box<AnimationTransitions>) -> 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<AnimationTransitions>) -> Box<dyn Reflect>
fn into_reflect(self: Box<AnimationTransitions>) -> 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<AnimationTransitions>) -> ReflectOwned
fn reflect_owned(self: Box<AnimationTransitions>) -> 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 Struct for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
impl Struct for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
source§fn field(&self, name: &str) -> Option<&(dyn Reflect + 'static)>
fn field(&self, name: &str) -> Option<&(dyn Reflect + 'static)>
name as a &dyn Reflect.source§fn field_mut(&mut self, name: &str) -> Option<&mut (dyn Reflect + 'static)>
fn field_mut(&mut self, name: &str) -> Option<&mut (dyn Reflect + 'static)>
name as a
&mut dyn Reflect.source§fn field_at(&self, index: usize) -> Option<&(dyn Reflect + 'static)>
fn field_at(&self, index: usize) -> Option<&(dyn Reflect + 'static)>
index as a
&dyn Reflect.source§fn field_at_mut(&mut self, index: usize) -> Option<&mut (dyn Reflect + 'static)>
fn field_at_mut(&mut self, index: usize) -> Option<&mut (dyn Reflect + 'static)>
index
as a &mut dyn Reflect.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<'_> ⓘ
source§fn clone_dynamic(&self) -> DynamicStruct
fn clone_dynamic(&self) -> DynamicStruct
DynamicStruct.source§impl TypePath for AnimationTransitions
impl TypePath for AnimationTransitions
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 AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
impl Typed for AnimationTransitionswhere
AnimationTransitions: Any + Send + Sync,
Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection,
Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,
Auto Trait Implementations§
impl Freeze for AnimationTransitions
impl RefUnwindSafe for AnimationTransitions
impl Send for AnimationTransitions
impl Sync for AnimationTransitions
impl Unpin for AnimationTransitions
impl UnwindSafe for AnimationTransitions
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<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<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<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 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