Crates.io | bevy_megaui |
lib.rs | bevy_megaui |
version | 0.1.4 |
source | src |
created_at | 2020-12-21 16:50:57.116565 |
updated_at | 2021-01-30 09:38:44.833332 |
description | Megaui integration for Bevy |
homepage | |
repository | https://github.com/mvlabat/bevy_megaui |
max_upload_size | |
id | 325317 |
size | 160,012 |
bevy_megaui
This crate provides a megaui integration for the Bevy game engine.
bevy_megaui
depends solely on megaui
and bevy
with only render
feature required.
An example WASM project is live at mvlabat.github.io/bevy_megaui_web_showcase [source].
Note that in order to use bevy_megaui
in WASM you need bevy_webgl2 of at least 0.4.1
version.
Here's a minimal usage example:
# Cargo.toml
[dependencies]
bevy = "0.4"
bevy_megaui = "0.1"
use bevy::prelude::*;
use bevy_megaui::{
megaui::{hash, Vector2},
MegaUiContext, MegaUiPlugin,
};
fn main() {
App::build()
.add_plugins(DefaultPlugins)
.add_plugin(MegaUiPlugin)
.add_system(ui_example.system())
.run();
}
fn ui_example(_world: &mut World, resources: &mut Resources) {
let mut ui = resources.get_thread_local_mut::<MegaUiContext>().unwrap();
ui.draw_window(
hash!(),
Vector2::new(5.0, 5.0),
Vector2::new(100.0, 50.0),
None,
|ui| {
ui.label(None, "Hello world!");
},
);
}
For a more advanced example, see examples/ui.rs.
cargo run --example ui --features="bevy/x11 bevy/png bevy/bevy_wgpu"