bevy_generative
bevy_generative
is a plugin written for the bevy engine that allows real-time procedural generation of maps, textures, terrain, planets and more!
Features
- Allows procedural generation of assets which can be directly integrated in your bevy game
- Handles real-time updating of image and mesh data as configuration for the asset changes
- Builds on native as well as wasm targets
- Allows saving generated assets (uses
rfd
for native, javascript blob for wasm) - Serializes and deserializes components using
serde
Showcase
Check out Procedra [Source], a procedural generation web application that allows you to experiment with all the parameters and generate assets in real-time!
Installation
Add bevy_generative
to your rust project
Examples
Maps and Textures
use *;
use ;
Terrain
use *;
use ;
Planets
use *;
use ;
Bevy Compatibility
bevy | bevy_generative |
---|---|
0.14 | 0.3, main |
0.13 | 0.2 |
0.12 | 0.1 |
Contributing
Contributions are welcome! Issues, pull requests, feature requests and bug reports are appreciated. If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch with a descriptive name.
- Make your changes or additions.
- Test your changes.
- Submit a pull request with a clear description of your work.
Please ensure your code passes all CI checks and includes relevant tests if applicable. Thank you for helping improve bevy_generative
!
Your contribution will be dual-licensed as mentioned in the License section below.
License
All code in this repository is dual-licensed under either:
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
at your option. This means you can select the license you prefer! This dual-licensing approach is the de-facto standard in the Rust ecosystem and there are very good reasons to include both.