Crate bevy_tiled_background

Crate bevy_tiled_background 

Source
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§

TiledBackgroundMaterial
A UI material that renders a tiled, animated pattern.
TiledBackgroundPlugin
Plugin that registers the TiledBackgroundMaterial for use in UI.