Expand description
Built-in animation, constraint, and physics plugins. Built-in runtime plugins: animation, constraints, simple physics, and skeletal animation.
All plugins implement crate::RuntimePlugin and are registered on
crate::ViewportRuntime via crate::ViewportRuntime::with_plugin.
§Layout convention
New plugins live in their own subdirectory under plugins/, not as a single
file. Use the [skeleton_plugin] module as the template:
plugins/
my_plugin/
mod.rs // re-exports the public surface
plugin.rs // the RuntimePlugin impl
<feature>.rs // substrate types, math, helpers, internal stateRationale: features grow. A plugin that starts as a single file invariably
accumulates substrate types, helper modules, and tests. Starting in a
subdirectory avoids a later rename-and-rewire that breaks use paths
across the codebase. It also keeps each plugin’s surface area discoverable
in one place rather than scattered between runtime/<feature>.rs and
runtime/plugins/<feature>.rs.
All plugins follow the subdirectory layout. Use the [skeleton_plugin] module
as the template for new plugins.
Re-exports§
pub use animation::AnimationPlugin;pub use animation::AnimationTrack;pub use animation::Keyframe;pub use constraint::Constraint;pub use constraint::ConstraintPlugin;pub use physics_lite::PhysicsBody;pub use physics_lite::PhysicsLitePlugin;pub use skeleton_plugin::AnimationClip;pub use skeleton_plugin::Channel;pub use skeleton_plugin::ClipPlayerPlugin;pub use skeleton_plugin::Interpolation;pub use skeleton_plugin::Joint;pub use skeleton_plugin::JointMatrices;pub use skeleton_plugin::MAX_JOINTS;pub use skeleton_plugin::Pose;pub use skeleton_plugin::Sampler;pub use skeleton_plugin::Skeleton;pub use skeleton_plugin::SkeletonPlugin;pub use skeleton_plugin::SkinnedActor;pub use skeleton_plugin::SkinnedActorPart;pub use skeleton_plugin::SkinnedActorPlugin;pub use skeleton_plugin::SkinningPath;pub use skeleton_plugin::Track;pub use skeleton_plugin::TrackValue;pub use skeleton_plugin::TrackValues;pub use skeleton_plugin::apply_skin;
Modules§
- animation
- AnimationPlugin: keyframed and procedural transform animation.
- constraint
- ConstraintPlugin: spring-to-target, damping, and bounds constraints.
- physics_
lite - PhysicsLitePlugin: simple velocity integration, gravity, and bounded collision.
- skeleton_
plugin - Skeletal animation: substrate types, animation clips, and built-in plugins.