Skip to content

Latest commit

 

History

History
71 lines (54 loc) · 2.97 KB

README.md

File metadata and controls

71 lines (54 loc) · 2.97 KB

Crates.io Version Crates.io License Docs.rs

bevy_tween

Flexible tweening plugin for Bevy.

Differences

The main motivation or goal for this tweening crate is that the previous existing tweening crates is not flexible enough. The differences will be explained below.

Differences to bevy_tweening or bevy_easings:

  • Tweening is not tied to a certain entity. You can create an entity specifically for tweening any where in the world.
  • Complex animation, such as sequential or parallel tweening, are solved using child-parent hierarchy:
    • Solved the issue of modifying animation at runtime presents in the previous crates.
    • Everything exists in the ECS world with no hidden structure, everything can be freely accessed.
    • Makes a very extendable system, thanks Bevy's ECS!
  • User of this crate are free to decide if they want to only use generic, only trait object, or even both for tweening! They both came with their pros and cons which will be explained in the documentation.

Feature gates

  • "span_tween", enabled by default.
    Tween for a range of time.
  • "bevy_asset", enabled by default.
    enable "bevy/bevy_asset", add tweening systems for asset.
  • "bevy_render", enabled by default.
    enable "bevy/bevy_render", add nothing but required by the "bevy_sprite" feature.
  • "bevy_sprite", enabled by default.
    enable "bevy/bevy_sprite", add some built-in interpolator related to sprite.

Demos

cargo run --example demo_follow -F bevy/bevy_winit
cargo run --example demo_click -F bevy/bevy_winit
cargo run --example demo_hold -F bevy/bevy_winit

Bevy Version Support

bevy bevy_tween
0.13 0.2

Credits

  • bevy_tweening

    The first crate I discovered and tried to do tweening with in Bevy. I like the idea of Lens of theirs. I've renamed this to Interpolator in this crate.

  • godot

    Godot's tween make it simple to animate something which is part of the idea for this crate. The Godot's node child-parent hierarchy system and that the engine utilizes this to define behavior, powerful stuff!

License

Licensed under either of

at your option.