#bevy #background-task #bevy-plugin #task-pool #events #future #callback

bevy_background_compute

Bevy插件,用于更好的任务处理

8个版本 (4个破坏性更新)

0.5.0 2023年11月18日
0.4.1 2023年11月13日
0.3.0 2023年11月12日
0.2.1 2023年11月12日
0.1.1 2022年9月12日

#908游戏开发

每月44次下载

MIT 协议

13KB
163

Bevy后台计算

bevy 插件提供了对后台任务处理的改进。它向 Future 添加了 TaskPoolCommands 扩展,以便更容易地将它们放置在 bevy 的 TaskPool 上,并在完成时以包含结果的事件的形式发送回调。

完整使用示例

使用以下命令查看基本用法示例:

cargorun --examplebasic_usage

注册后台可计算的类型

为了跟踪正在运行的任务并产生完成事件,您必须使用 BackgroundComputePlugin<T> 将您的所有由 Futures 返回的类型注册。

app.add_plugins(BackgroundComputePlugin::<MyType>::default())

在后台计算Future

commands.compute_in_background(async {
    // Your code here
});

获取结果

// Create a system consuming BackgroundComputeComplete<T> events
fn my_callback_sys(
    mut events: EventReader<BackgroundComputeComplete<MyType>>
) {
    // Handle like any other bevy event
}

版本兼容性

插件 Bevy
0.1 0.8
0.2 0.9
0.3 0.10
0.4 0.11

依赖项

~11MB
~193K SLoC