17 releases
0.3.0 | Dec 23, 2024 |
---|---|
0.2.0 | Dec 23, 2024 |
0.1.14 | Apr 30, 2024 |
#643 in Game dev
274 downloads per month
52KB
193 lines
bevy_text_animation
text animation library for Bevy, just like typewriter effect.
see examples for usage.
Versions
bevy | bevy_text_animation |
---|---|
0.15 | 0.3 |
0.14 | 0.2 |
0.13 | 0.1 |
Usage
simple.rs
use bevy::prelude::*;
use bevy_text_animation::{TextAnimationFinished, TextAnimatorPlugin, TextSimpleAnimator};
fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_plugins(TextAnimatorPlugin)
.add_systems(Startup, setup)
.add_systems(Update, key_handler)
.add_systems(Update, event_handler)
.run();
}
fn setup(
mut commands: Commands,
) {
commands.spawn(Camera2d::default());
commands.spawn((
Text2d::new(""),
TextFont {
font_size: 60.0,
..default()
},
TextColor(Color::WHITE),
)).insert(TextSimpleAnimator::new("Hello, World!", 8.0));
}
fn key_handler(
keyboard_input: Res<ButtonInput<KeyCode>>,
mut query: Query<&mut TextSimpleAnimator>,
) {
for mut animator in query.iter_mut() {
if keyboard_input.just_pressed(KeyCode::Space) {
animator.play();
}
}
}
fn event_handler(
mut events: EventReader<TextAnimationFinished>,
) {
for event in events.read() {
println!("Text Animation finished for entity (id: {:?})", event.entity);
}
}
TODOs
- multiple sections
- alpha color animation
Dependencies
~51–83MB
~1.5M SLoC