1- _ Library crate:_ [ ![ Crates.io] ( https://img.shields.io/crates/v/bevy_animation_graph )] ( https://crates.io/crates/bevy_animation_graph )
1+ _ Library crate:_
2+ [ ![ Crates.io] ( https://img.shields.io/crates/v/bevy_animation_graph )] ( https://crates.io/crates/bevy_animation_graph )
23[ ![ Crates.io] ( https://img.shields.io/crates/d/bevy_animation_graph )] ( https://crates.io/crates/bevy_animation_graph )
34
4- _ Editor crate:_ [ ![ Crates.io] ( https://img.shields.io/crates/v/bevy_animation_graph_editor )] ( https://crates.io/crates/bevy_animation_graph_editor )
5+ _ Editor crate:_
6+ [ ![ Crates.io] ( https://img.shields.io/crates/v/bevy_animation_graph_editor )] ( https://crates.io/crates/bevy_animation_graph_editor )
57[ ![ Crates.io] ( https://img.shields.io/crates/d/bevy_animation_graph_editor )] ( https://crates.io/crates/bevy_animation_graph_editor )
68
79[ ![ CI] ( https://github.com/mbrea-c/bevy_animation_graph/actions/workflows/ci.yaml/badge.svg )] ( https://github.com/mbrea-c/bevy_animation_graph/actions/workflows/ci.yaml )
@@ -16,7 +18,7 @@ animations with complex blends and transitions, or you want to generate your
1618animations procedurally from very few keyframes, simple animation clip playback
1719is not enough.
1820
19- This crate works as a replacement to most of ` bevy_animation ` , and aims to
21+ This crate works as an alternative to most of ` bevy_animation ` , and aims to
2022provide a complete animation system and development workflow including animation
2123graphs, animation state machines (i.e. animation controllers) and a graphical
2224editor to create your animation graphs and state machines.
@@ -34,7 +36,11 @@ _NOTE: This project is separate from the animation graphs introduced in
3436 - Each state in a state machines plays back its own animation graph on demand.
3537 - Transitions also have their own animation graph, and they can query source
3638 and target states' animation graphs.
37- - Available nodes:
39+ - Ragdoll support:
40+ - Visual ragdoll editing in the editor.
41+ - Support for _ partial ragdolls_ , where some bones are simulated and others
42+ kinematically driven by a target animation pose.
43+ - Available nodes include:
3844 - Animation chaining (i.e. play one node after another).
3945 - Two-bone inverse kinematics.
4046 - Looping.
@@ -43,10 +49,10 @@ _NOTE: This project is separate from the animation graphs introduced in
4349 - Mirror animation about the YZ plane.
4450 - Animation clip playback.
4551 - Apply a given rotation to some bones in a pose using a bone mask.
46- - Arithmetic nodes: a variety of common operations on f32, Vec3, Quat, etc.
4752 - Speed up or slow down animation playback.
4853 - Animation graph node.
4954 - Animation state machine node.
55+ - Arithmetic nodes: a variety of common operations on f32, Vec3, Quat, etc.
5056- Nesting animation graphs as nodes within other graphs.
5157- Animation synchronization using event tracks.
5258- Output from graph nodes is cached to avoid unnecessary computations.
@@ -57,15 +63,14 @@ _NOTE: This project is separate from the animation graphs introduced in
5763
5864## Planned Features
5965
60- Wishlist:
61-
62- 1 . Ragdoll and physics integration (inititally ` bevy_xpbd ` , possibly rapier
63- later):
64- 1 . Using a bone mask to specify which bones are kinematically driven, and
65- which bones are simulated (i.e. _ ragdolled_ )
66- 1 . Pose matching with joint motors (pending on joint motors being implemented
67- in ` bevy_xpbd ` , currently WIP)
68- 1 . FABRIK node (?).
66+ 1 . Ragdoll "pose following" modes, where a simulated ragdoll bones try to match
67+ a target pose using physical forces:
68+ - _ Absolute_ matching mode, where the world space position/rotation of the
69+ target bone is tracked and use as an anchor for a spring force on the
70+ ragdoll bone.
71+ - _ Relative_ matching mode, where the ragdoll bone tries to match the
72+ target's position/rotation relative to its parent bone. We may need joint
73+ motors support on Avian to implement this mode properly.
6974
7075## Installation
7176
@@ -108,16 +113,16 @@ This project is divided in two crates:
108113
109114## Version table
110115
111- | ` bevy ` | ` bevy_animation_graph ` |
112- | ------ | ---------------------- |
113- | 0.17 | master |
114- | 0.17 | 0.8 |
115- | 0.16 | 0.7 |
116- | 0.15 | 0.6 |
117- | 0.14 | 0.5 |
118- | 0.13 | 0.4 |
119- | 0.13 | 0.3 |
120- | 0.12 | 0.2 |
116+ | ` bevy ` | ` bevy_animation_graph ` |
117+ | ------ | ---------------------- |
118+ | 0.17 | master |
119+ | 0.17 | 0.8 |
120+ | 0.16 | 0.7 |
121+ | 0.15 | 0.6 |
122+ | 0.14 | 0.5 |
123+ | 0.13 | 0.4 |
124+ | 0.13 | 0.3 |
125+ | 0.12 | 0.2 |
121126
122127## Usage and examples
123128
0 commit comments