Bevy common assets
This Bevy plugin includes generic asset loaders for common file formats.
Supported formats:
format |
feature |
example |
|---|---|---|
json |
json |
json.rs |
ron |
ron |
ron.rs |
toml |
toml |
toml.rs |
yaml |
yaml |
yaml.rs |
Usage
Enable the feature(s) for the format(s) that you want to use.
Define the types that you would like to load from files and derive serde::Deserialize and bevy::reflect::TypeUuid for them. The latter requires a unique uuid as an attribute:
// <-- keep me unique
With your types ready, you can add asset plugins for each type. Every plugin gets the asset type as a generic parameter. You also need to configure custom file endings for each type:
use JsonAssetPlugin;
use RonAssetPlugin;
use TomlAssetPlugin;
use YamlAssetPlugin;
See the examples for working Bevy apps using the different formats.
Compatible Bevy versions
The main branch is compatible with the latest Bevy release.
Compatibility of bevy_common_assets versions:
bevy_common_assets |
bevy |
|---|---|
0.1 |
0.7 |
main |
0.7 |
Prior art
If you only need to load ron files, bevy_asset_ron offers the same functionality as bevy_common_assets.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.