Struct bevy::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