#bevy #tree #bundles #enums #command #bundletree #bundle-enum

bevy_bundletree

在Bevy游戏引擎中生成bundle树,使UI代码更易用。

3个版本

0.1.2 2024年7月15日
0.1.1 2024年5月18日
0.1.0 2024年5月18日

#617游戏开发

Download history 256/week @ 2024-05-16 20/week @ 2024-05-23 1/week @ 2024-06-27 3/week @ 2024-07-04 123/week @ 2024-07-11 16/week @ 2024-07-18 1/week @ 2024-07-25

144 每月下载量

MIT/Apache

480KB
97 代码行

bevy_bundletree

License Crates.io Docs

在Bevy中生成bundle树,使UI代码更易用。

使用方法

定义一个枚举来表示树中所有可能的bundle,并推导出IntoBundleTreeBundleEnum

use bevy::prelude::*;
use bevy_bundletree::*;

#[derive(IntoBundleTree, BundleEnum)]
enum UiNode {
    Node(NodeBundle),
    Text(TextBundle),
    Button(ButtonBundle),
}
fn setup(mut commands: Commands) {
    let tree: BundleTree<UiNode> = NodeBundle::default().with_children([
        TextBundle::default().into_tree(),
        ButtonBundle::default().into_tree()]);
    commands.spawn_tree(tree);
}

依赖关系

~23MB
~411K SLoC