An example bevy
game where you plant trees in a garden.
This example demonstrates a simple editor interface, working with bevy
scenes, saving/loading and common patterns
regarding game state.
cargo run
This example showcases the following:
- Spawn objects from asset files.
- Capture object to scene.
- Tool library and tool stack.
- Saving and loading.
- Undo and redo (also via save crate).
- Treat objects made up of multiple entities as a single object.
- Multiple examples working with
bevy
scenes:- Modifying scenes before spawning (centering, adding components etc.).
- Dealing with
Parent
/Children
hierarchies in scenes. - Spawning scenes directly into the world, without using
DynamicSceneBundle
. - See bevy_scene_utils, save, duplicate_tool and prefab_tool for examples.
The following third-party crates are used:
- bevy_asset_loader - Load assets in loading states.
- bevy_common_assets - Custom
ron
assets. - bevy_mod_raycast - Ray casting and picking.
- bevy_save - I copied the idea of the
SaveableRegistry
and rollbacks from this project (see save crate).
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.