pub struct AnimationLibrary { /* private fields */ }
Expand description
The animation library is the global store for clips and animations.
When the SpritesheetAnimationPlugin is added to the app, the AnimationLibrary becomes available as a resource.
You can then use it to register new clips and animations, and create new markers.
§Example
fn my_system(mut library: ResMut<AnimationLibrary>) {
// Create a marker
let marker_id = library.new_marker();
// Create a clip and attach the marker created above
let clip = Clip::from_frames([0, 1, 2, 3])
.with_marker(marker_id, 5);
let clip_id = library.register_clip(clip);
// Create an animation that uses the clip
let animation = Animation::from_clip(clip_id);
let animation_id = library.register_animation(animation);
// ... Assign the animation to a SpritesheetAnimation component ...
}
Implementations§
Source§impl AnimationLibrary
impl AnimationLibrary
Sourcepub fn register_clip(&mut self, clip: Clip) -> ClipId
pub fn register_clip(&mut self, clip: Clip) -> ClipId
Sourcepub fn deregister_clip(&mut self, clip_id: ClipId)
pub fn deregister_clip(&mut self, clip_id: ClipId)
Deregisters a clip from the library.
§Example
let clip = Clip::from_frames([1, 2, 3]);
let clip_id = library.register_clip(clip);
library.deregister_clip(clip_id);
// TODO should return an Option
// assert!(library.get_clip(clip_id).is_none());
Sourcepub fn name_clip(
&mut self,
clip_id: ClipId,
name: impl Into<String>,
) -> Result<(), LibraryError>
pub fn name_clip( &mut self, clip_id: ClipId, name: impl Into<String>, ) -> Result<(), LibraryError>
Associates a unique name to a clip.
The clip ID can then later be queried from that name with AnimationLibrary::clip_with_name.
Returns a LibraryError::NameAlreadyTaken error if the name is already in use.
§Arguments
clip_id
- the ID of the clip to namename
- the name to assign
§Example
let clip = Clip::from_frames([1, 2, 3]);
let clip_id = library.register_clip(clip);
library.name_clip(clip_id, "jump");
assert_eq!(library.clip_with_name("jump"), Some(clip_id));
assert!(library.is_clip_name(clip_id, "jump"));
Sourcepub fn clip_names(&self) -> &HashMap<ClipId, String>
pub fn clip_names(&self) -> &HashMap<ClipId, String>
Returns all the clip names registered in the library.
Sourcepub fn get_clip_name(&self, clip_id: ClipId) -> Option<&str>
pub fn get_clip_name(&self, clip_id: ClipId) -> Option<&str>
Sourcepub fn is_clip_name(&self, clip_id: ClipId, name: impl AsRef<str>) -> bool
pub fn is_clip_name(&self, clip_id: ClipId, name: impl AsRef<str>) -> bool
Returns true if a clip has the given name.
§Arguments
clip_id
- the ID of the clip to check the name ofname
- the name to check
Sourcepub fn register_animation(&mut self, animation: Animation) -> AnimationId
pub fn register_animation(&mut self, animation: Animation) -> AnimationId
Registers an new Animation and returns its ID.
The animation can then be referenced in SpritesheetAnimation components.
§Example
fn f(
mut commands: Commands,
mut library: AnimationLibrary,
// ...
) {
let clip = Clip::from_frames([4, 5, 6]);
let clip_id = library.register_clip(clip);
let animation = Animation::from_clip(clip_id)
.with_duration(AnimationDuration::PerRepetition(1500));
let animation_id = library.register_animation(animation);
// The animation can then be assigned to an entity
// ... omitted: load an image and create a texture atlas for the sprite ...
commands.spawn((
Sprite::from_atlas_image(image, atlas),
SpritesheetAnimation::from_id(animation_id)
));
}
Sourcepub fn deregister_animation(&mut self, animation_id: AnimationId)
pub fn deregister_animation(&mut self, animation_id: AnimationId)
Deregisters an animation from the library.
This also deregisters all the clips associated with the animation.
§Example
fn f(
mut commands: Commands,
mut library: AnimationLibrary,
// ...
) {
let clip = Clip::from_frames([4, 5, 6]);
let clip_id = library.register_clip(clip);
let animation = Animation::from_clip(clip_id)
.with_duration(AnimationDuration::PerRepetition(1500));
let animation_id = library.register_animation(animation);
// Later, when finished with the animation, deregister it.
library.deregister_animation(animation_id);
// The animation and its clips are no longer available in the library.
// TODO should return an Option
// assert!(library.get_animation(animation_id).is_none());
// assert!(library.get_clip(clip_id).is_none());
}
Sourcepub fn name_animation(
&mut self,
animation_id: AnimationId,
name: impl Into<String>,
) -> Result<(), LibraryError>
pub fn name_animation( &mut self, animation_id: AnimationId, name: impl Into<String>, ) -> Result<(), LibraryError>
Associates a unique name to an animation.
The animation ID can then later be queried from that name with AnimationLibrary::animation_with_name.
Returns a LibraryError::NameAlreadyTaken error if the name is already in use.
§Arguments
animation_id
- the ID of the animation to namename
- the name to assign
§Example
let animation = Animation::from_clip(clip_id);
let animation_id = library.register_animation(animation);
library.name_animation(animation_id, "crouch");
assert_eq!(library.animation_with_name("crouch"), Some(animation_id));
assert!(library.is_animation_name(animation_id, "crouch"));
Sourcepub fn animation_names(&self) -> &HashMap<AnimationId, String>
pub fn animation_names(&self) -> &HashMap<AnimationId, String>
Returns all the animation names registered in the library.
Sourcepub fn animation_with_name(&self, name: impl AsRef<str>) -> Option<AnimationId>
pub fn animation_with_name(&self, name: impl AsRef<str>) -> Option<AnimationId>
Returns the ID of the animation with the given name if it exists.
§Arguments
name
- the animation name
Sourcepub fn get_animation_name(&self, animation_id: AnimationId) -> Option<&str>
pub fn get_animation_name(&self, animation_id: AnimationId) -> Option<&str>
Returns the name of the animation with the given ID if it exists.
§Arguments
animation_id
- the animation id
Sourcepub fn is_animation_name(
&self,
animation_id: AnimationId,
name: impl AsRef<str>,
) -> bool
pub fn is_animation_name( &self, animation_id: AnimationId, name: impl AsRef<str>, ) -> bool
Returns true if an animation has the given name.
§Arguments
animation_id
- the ID of the animation to check the name ofname
- the name to check
Sourcepub fn animations(&self) -> &HashMap<AnimationId, Animation>
pub fn animations(&self) -> &HashMap<AnimationId, Animation>
Returns all the animations registered in the library.
Sourcepub fn get_animation(&self, animation_id: AnimationId) -> &Animation
pub fn get_animation(&self, animation_id: AnimationId) -> &Animation
Returns an animation registered in the library.
Sourcepub fn new_marker(&mut self) -> AnimationMarkerId
pub fn new_marker(&mut self) -> AnimationMarkerId
Creates a new animation marker and returns a unique ID to refer to it.
The marker can then be inserted into Clips and an AnimationEvent::MarkerHit event will be emitted whenever an animation reaches it.
For more details, see the documentation of AnimationEvent.
§Example
let marker = library.new_marker();
let clip = Clip::from_frames([7, 8, 9, 10, 11, 12])
.with_marker(marker, 3);
Sourcepub fn name_marker(
&mut self,
marker_id: AnimationMarkerId,
name: impl Into<String>,
) -> Result<(), LibraryError>
pub fn name_marker( &mut self, marker_id: AnimationMarkerId, name: impl Into<String>, ) -> Result<(), LibraryError>
Associates a unique name to an animation marker.
The marker ID can then later be queried from that name with AnimationLibrary::marker_with_name.
Returns a LibraryError::NameAlreadyTaken error if the name is already in use.
§Arguments
marker_id
- the ID of the marker to namename
- the name to assign
§Example
let marker_id = library.new_marker();
library.name_marker(marker_id, "raise sword");
assert_eq!(library.marker_with_name("raise sword"), Some(marker_id));
assert!(library.is_marker_name(marker_id, "raise sword"));
Sourcepub fn marker_names(&self) -> &HashMap<AnimationMarkerId, String>
pub fn marker_names(&self) -> &HashMap<AnimationMarkerId, String>
Returns all the marker names registered in the library.
Sourcepub fn marker_with_name(
&self,
name: impl AsRef<str>,
) -> Option<AnimationMarkerId>
pub fn marker_with_name( &self, name: impl AsRef<str>, ) -> Option<AnimationMarkerId>
Sourcepub fn get_marker_name(&self, marker_id: AnimationMarkerId) -> Option<&str>
pub fn get_marker_name(&self, marker_id: AnimationMarkerId) -> Option<&str>
Sourcepub fn is_marker_name(
&self,
marker_id: AnimationMarkerId,
name: impl AsRef<str>,
) -> bool
pub fn is_marker_name( &self, marker_id: AnimationMarkerId, name: impl AsRef<str>, ) -> bool
Returns true if an animation marker has the given name.
§Arguments
marker_id
- the ID of the marker to check the name ofname
- the name to check
Sourcepub fn markers(&self) -> &HashSet<AnimationMarkerId>
pub fn markers(&self) -> &HashSet<AnimationMarkerId>
Returns all the animation markers registered in the library.
Trait Implementations§
Source§impl Default for AnimationLibrary
impl Default for AnimationLibrary
Source§fn default() -> AnimationLibrary
fn default() -> AnimationLibrary
Source§impl FromReflect for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl FromReflect for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn from_reflect(reflect: &dyn PartialReflect) -> Option<Self>
fn from_reflect(reflect: &dyn PartialReflect) -> Option<Self>
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 GetTypeRegistration for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl GetTypeRegistration for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: 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 PartialReflect for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl PartialReflect for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: 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) -> Result<(), ApplyError>
fn try_apply(&mut self, value: &dyn PartialReflect) -> 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<Self>) -> ReflectOwned
fn reflect_owned(self: Box<Self>) -> ReflectOwned
Source§fn try_into_reflect(
self: Box<Self>,
) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
fn try_into_reflect( self: Box<Self>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>
Source§fn try_as_reflect(&self) -> Option<&dyn Reflect>
fn try_as_reflect(&self) -> Option<&dyn Reflect>
Source§fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>
fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>
Source§fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>
fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>
Source§fn as_partial_reflect(&self) -> &dyn PartialReflect
fn as_partial_reflect(&self) -> &dyn PartialReflect
Source§fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect
fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect
Source§fn reflect_partial_eq(&self, value: &dyn PartialReflect) -> Option<bool>
fn reflect_partial_eq(&self, value: &dyn PartialReflect) -> Option<bool>
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 debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
fn debug(&self, f: &mut Formatter<'_>) -> Result<(), Error>
Source§fn is_dynamic(&self) -> bool
fn is_dynamic(&self) -> bool
Source§impl Reflect for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Reflect for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
&mut dyn Any
. Read moreSource§fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
fn into_reflect(self: Box<Self>) -> Box<dyn Reflect>
Source§fn as_reflect(&self) -> &dyn Reflect
fn as_reflect(&self) -> &dyn Reflect
Source§fn as_reflect_mut(&mut self) -> &mut dyn Reflect
fn as_reflect_mut(&mut self) -> &mut dyn Reflect
Source§impl Struct for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Struct for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
Source§fn field(&self, name: &str) -> Option<&dyn PartialReflect>
fn field(&self, name: &str) -> Option<&dyn PartialReflect>
name
as a &dyn PartialReflect
.Source§fn field_mut(&mut self, name: &str) -> Option<&mut dyn PartialReflect>
fn field_mut(&mut self, name: &str) -> Option<&mut dyn PartialReflect>
name
as a
&mut dyn PartialReflect
.Source§fn field_at(&self, index: usize) -> Option<&dyn PartialReflect>
fn field_at(&self, index: usize) -> Option<&dyn PartialReflect>
index
as a
&dyn PartialReflect
.Source§fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn PartialReflect>
fn field_at_mut(&mut self, index: usize) -> Option<&mut dyn PartialReflect>
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 AnimationLibrary
impl TypePath for AnimationLibrary
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 AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Typed for AnimationLibrarywhere
AnimationLibrary: Any + Send + Sync,
HashMap<ClipId, Clip>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<ClipId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Animation>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashSet<AnimationMarkerId>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationMarkerId, String>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
HashMap<AnimationId, Arc<AnimationCache>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
AtomicUsize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,
impl Resource for AnimationLibrary
Auto Trait Implementations§
impl !Freeze for AnimationLibrary
impl RefUnwindSafe for AnimationLibrary
impl Send for AnimationLibrary
impl Sync for AnimationLibrary
impl Unpin for AnimationLibrary
impl UnwindSafe for AnimationLibrary
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<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> DowncastSend for T
impl<T> DowncastSend for T
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> 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 more