Expand description
A Bevy plugin for creating tiled, animated UI backgrounds.
This crate provides a UiMaterial implementation that renders a repeating pattern
with support for rotation, staggering, spacing, and scrolling animation.
§Example
use bevy::prelude::*;
use bevy_tiled_background::{TiledBackgroundPlugin, TiledBackgroundMaterial};
fn main() {
App::new()
.add_plugins((DefaultPlugins, TiledBackgroundPlugin))
.add_systems(Startup, setup)
.run();
}
fn setup(
mut commands: Commands,
asset_server: Res<AssetServer>,
mut materials: ResMut<Assets<TiledBackgroundMaterial>>,
) {
commands.spawn(Camera2d);
let material = materials.add(TiledBackgroundMaterial {
pattern_color: LinearRgba::WHITE,
scale: 0.5,
rotation: 35f32.to_radians(),
stagger: 0.5,
spacing: 10.0,
scroll_speed: Vec2::new(20.0, 0.0),
pattern_texture: asset_server.load("my_pattern.png"),
});
commands.spawn((
Node {
width: Val::Percent(100.0),
height: Val::Percent(100.0),
..default()
},
MaterialNode(material),
));
}Structs§
- Tiled
Background Material - A UI material that renders a tiled, animated pattern.
- Tiled
Background Plugin - Plugin that registers the
TiledBackgroundMaterialfor use in UI.