3个版本 (破坏性更新)
0.3.0 | 2023年7月12日 |
---|---|
0.2.0 | 2023年3月7日 |
0.1.0 | 2023年2月21日 |
#1973 在 游戏开发
每月26次下载
29KB
437 行
BEVY UI BITS
为Bevy提供的一套小巧且具有特定意见的用户界面组件集合
用法
use bevy::prelude::*;
use bevy_ui_bits::*;
fn main() {
App::new()
.add_plugins(DefaultPlugins)
.add_startup_system(spawn_ui)
.run();
}
fn spawn_ui(mut commands: Commands, asset_server: Res<AssetServer>) {
commands.spawn(Camera2dBundle::default());
let font = &asset_server.load("fonts/FiraMono-Medium.ttf");
// Root is the encompassing component for a given UI tree
let root = Root::congregated();
// Container is the quintessential layout component
let mut main_container = Container::height(400.0);
// EmbossedText represents text with a background relief
let mut title = EmbossedText::large("My Game", font);
// UiButton wraps over a ButtonBundle with opinionated defaults
let mut play = UiButton::new("Start", font);
let by = SimpleText::small("By me", font);
// Make changes to the properties with a fluent interface
main_container.justify_between();
title.color(Color::MIDNIGHT_BLUE);
play.selected_color(Color::MIDNIGHT_BLUE);
// Use a nested structure to spawn the UI tree
root.spawn(&mut commands, |parent| {
main_container.spawn(parent, |parent| {
title.spawn(parent);
play.spawn(parent);
by.spawn(parent);
});
});
}
示例
支持鼠标和键盘输入的基本主菜单UI
使用以下内容尝试
cargo run --example main_menu --features="bevy/default"
具有动态文本组件的简单HUD
使用以下内容尝试
cargo run --example hud --features="bevy/default"
使用RootMarker
递归销毁UI
使用以下内容尝试
cargo run --example despawn --features="bevy/default"
Bevy兼容性
bevy | bevy_ui_bits |
---|---|
0.11 | 0.3 |
0.10 | 0.2 |
0.9 | 0.1 |
许可证
本项目可以选择以下任一许可证
- MIT许可证 (LICENSE-MIT 或 https://opensource.org/licenses/MIT)
- Apache许可证2.0版 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
供您选择。
除Fira Mono字体外,它有自己的许可证。
贡献
除非您明确声明,否则您有意提交的任何贡献,根据Apache-2.0许可证的定义,将根据上述方式双重许可,没有任何额外的条款或条件。
依赖关系
~43–78MB
~1M SLoC