Expand description
SkinnedActorPlugin: many independently-animated skinned actors sharing one
Skeleton.
Each SkinnedActor has its own playhead, clip, and play state. Within
an actor, all SkinnedActorParts deform from that actor’s pose, so the
parts of a multi-mesh character animate in sync. Across actors, animation
is independent: a crowd of N actors with staggered playheads animates as N
distinct loops over the same source data.
Compared to super::SkeletonPlugin + super::ClipPlayerPlugin:
- That pair runs one animation: the player writes one
Poseto resources and one or more SkeletonPlugins consume it. Good for a single character (potentially with many parts) animating in lockstep. SkinnedActorPluginis the multi-actor case: a crowd, a stadium of NPCs, an army. One plugin holds the shared skeleton and N actors that each animate independently, in a single phase tick.
This phase is the CPU baseline. The same actor/part decomposition is what a later GPU-skinning path will turn into per-actor joint-palette uploads and per-part skinned draw calls, so callers should target this shape now.
Structs§
- Skinned
Actor - One independently-animated actor. Its parts deform from this actor’s pose each frame; other actors in the same plugin animate from their own.
- Skinned
Actor Part - One skinned mesh of an actor. All parts of an actor share that actor’s per-frame pose; each part owns its own bind-pose vertex data and GPU mesh because the CPU LBS path writes deformed vertices back per-mesh.
- Skinned
Actor Plugin - Runtime plugin that animates many actors sharing one skeleton.