tasgon / bevy_iced

Iced integration for Bevy
Other
125 stars 14 forks source link

bevy_iced: use Iced UI programs in your Bevy application

Crates.io MIT/Apache 2.0

Example

use bevy::prelude::*;
use bevy_iced::iced::widget::text;
use bevy_iced::{IcedContext, IcedPlugin};

#[derive(Event)]
pub enum UiMessage {}

pub fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_plugins(IcedPlugin::default())
        .add_event::<UiMessage>()
        .add_systems(Update, ui_system)
        .run();
}

fn ui_system(time: Res<Time>, mut ctx: IcedContext<UiMessage>) {
    ctx.display(text(format!(
        "Hello Iced! Running for {:.2} seconds.",
        time.elapsed_seconds()
    )));
}

See the examples and the documentation for more details on how to use the crate.

Compatibility

Bevy Version Crate Version
0.13 0.5, master
0.11 0.4
0.10 0.3
0.9 0.2
0.7 0.1

Todo

Credits