1 个不稳定版本
0.1.0 | 2024年8月6日 |
---|
#410 在 游戏开发
122 每月下载量
35KB
133 代码行
Bevy Easy Config
Bevy Easy Config 是一个插件,允许您轻松加载配置文件并将它们作为资源实例化。
用法
首先定义您想加载的结构体,并实现/推导相关特性
// Define the struct to load
#[derive(Deserialize, Asset, Resource, Clone, TypePath)]
struct Settings {
some_keybind: KeyCode
}
// Default also needs to be implemented
impl Default for Settings {
fn default() -> Self {
Self {
some_keybind: KeyCode::KeyW
}
}
}
将其添加到您的应用程序中
use bevy_easy_config::EasyConfigPlugin;
fn main() {
App::new()
.add_plugins((
DefaultPlugins,
EasyConfigPlugin::<Settings>::new("settings.ron"),
))
.run();
}
这将加载位于 assets/settings.ron
的文件,并将其插入到 Settings 结构体中作为资源。
fn some_random_function(
settings: Res<Settings>
) {
// ... Your awesome code here
}
注意
在加载资产之前,访问 Settings 资源时,您将得到 Settings::default()
中的值。据我所知,目前还没有很好的解决办法,因此您需要在前几次滴答中处理默认值,直到资产加载完毕。当资产加载后,它将自动替换默认值。
许可证
双许可以下任一项
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
- Apache 许可证 2.0 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
任选其一。
您的贡献
除非您明确说明,否则根据 Apache-2.0 许可证定义的,任何有意提交以包含在作品中的贡献,都应如上所述双许可,不附加任何额外条款或条件。
依赖关系
~39–79MB
~1.5M SLoC