Benimator
A sprite sheet animation plugin for bevy
Features
- A
SpriteSheetAnimationasset - Automatic update indices of a
TextureAtlasSprite - Animation modes:
once,repeatandping_pong - An animation is playing if, and only if, a
Playcomponent is present in the entity- Simply remove/insert the
Playcomponent to pause/resume an animation
- Simply remove/insert the
- The animation can be defined from an index-range, or an arbitrary list of indices
- Each frame may have a different duration
Usage
Here is the result:

(Asset by La Red Games - CC0)
For more details see the documentation
Installation
Add the dependency to your project
Cargo features
| Feature | Description |
|---|---|
serde |
Implementation of serde traits for deserializaion |
yaml |
Asset loader for yaml files |
ron |
Asset loader for ron files |
bevy-07 |
Integration with bevy 0.7 |
Feature flags not mentioned here are NOT part of the public API and are subject to breaking changes.
MSRV
The minimum supported rust version is currently: 1.60
It may be increased to a newer stable version in a minor release. (but only if needed)
It will be increased to the latest stable version in a major release. (even if not needed)
Bevy Version Compatibility
| bevy | benimator |
|---|---|
| 0.7 | 3 |
| 0.6 | 1, 2 |
| 0.5 | 0.1 - 0.3 |
Note: Only the latest published version of benimator is supported
Contribute / Contact
Discussions, issues and pull requests are welcome.
It is possible to directly discuss with me (Jomag#2675) via the bevy discord.
If you want to understand the "architecture" decisions made you may look at the doc/adr directory.
License
Licensed under either of
- The Unlicense (UNLICENSE or https://opensource.org/licenses/Unlicense)
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.