pub struct AnimationSystem { /* private fields */ }Expand description
Skeletal animation playback behavior. Constructed internally by
World::start when the world declares any Animation or AnimationGraph;
never a world-declared asset, so it carries no config.
Implementations§
Source§impl AnimationSystem
impl AnimationSystem
Sourcepub fn apply_runtime_commands(&mut self)
pub fn apply_runtime_commands(&mut self)
Drain pending runtime commands against the system’s own clock. Uses the
same start / elapsed bookkeeping step uses, so the binary-only
DebugHook::tick drive can apply commands from outside the per-system
step. The library never calls this; step runs after the hook on the
same frame, so the start anchor set here is shared.
Source§impl AnimationSystem
impl AnimationSystem
Sourcepub fn new() -> Self
pub fn new() -> Self
Fresh playback state with no clips. Clips and graphs are drained from
the world’s components in System::init.
Sourcepub fn reload_entries(&self) -> &[AnimationReloadEntry]
pub fn reload_entries(&self) -> &[AnimationReloadEntry]
The file-backed clips captured at init under cn debug. The editor
crate’s hot-reload drive reads these to re-import each clip from source.
Empty when hot-reload is off or every clip is inline.
Sourcepub fn apply_reloaded_clip(
&mut self,
target: SkinnedMeshHandle,
clip_index: usize,
clip: AnimationClip,
weight: f32,
) -> bool
pub fn apply_reloaded_clip( &mut self, target: SkinnedMeshHandle, clip_index: usize, clip: AnimationClip, weight: f32, ) -> bool
Swap a freshly re-imported clip into the bucket slot identified by
target + clip_index, restoring its declared weight. Returns false
if the target bucket disappeared or the slot index is out of range
(a half-applied reload is impossible: nothing is mutated on miss). The
editor crate calls this after decoding the source GLB; the runtime crate
does no decoding of its own.
Trait Implementations§
Source§impl Debug for AnimationSystem
impl Debug for AnimationSystem
Source§impl Default for AnimationSystem
impl Default for AnimationSystem
Source§impl System for AnimationSystem
impl System for AnimationSystem
Source§fn access(&self) -> Access
fn access(&self) -> Access
step may touch, consulted once when the schedule is built
(after init, so a data-dependent system can compute it from its
compiled state). The default claims everything: an undeclared system is
ordered against all others and never runs concurrently, which is always
safe. Declaring narrower access is what admits a system to shared waves
and to debug-build access validation.Source§fn init(&mut self, ctx: &mut PipelineContext<'_>)
fn init(&mut self, ctx: &mut PipelineContext<'_>)
World::start, before the first step.Source§fn step(&mut self, ctx: &mut PipelineContext<'_>) -> StepResult
fn step(&mut self, ctx: &mut PipelineContext<'_>) -> StepResult
Auto Trait Implementations§
impl Freeze for AnimationSystem
impl RefUnwindSafe for AnimationSystem
impl Send for AnimationSystem
impl Sync for AnimationSystem
impl Unpin for AnimationSystem
impl UnsafeUnpin for AnimationSystem
impl UnwindSafe for AnimationSystem
Blanket Implementations§
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§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> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
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().