2.0 KiB
Forge Demo
A tiny Bevy 0.20 project used as the demo project for Bevy Forge, the visual scene editor for Bevy BSN scenes. It contains two editable scenes and a small set of generated pixel-art textures.
Open it in Bevy Forge
From the repository root:
cargo run -p bevy_forge_editor -- examples/demo-project
Bevy Forge discovers the Bevy project from Cargo.toml, scans assets/ and opens the
first scene automatically. Open the other scene from the File menu, edit entities in the
hierarchy/inspector, and save with Ctrl+S. Use Export (or the forge CLI) to turn a
scene into paste-ready BSN Rust code or imperative Commands::spawn code.
Scenes
| Scene | Contents |
|---|---|
scenes/garden.forge.ron |
3D garden: camera, sun, point light, ground plane, shrub, flower, lantern post and an orbiting crystal with the custom forge_demo::Orbit component. |
scenes/platformer.forge.ron |
2D platformer: camera, dusk background, ground tiles, floating ledge, player with a hat child, coins, crates and two Text2d labels. |
Both scenes are plain RON and human-readable. Every referenced texture exists in
assets/textures/.
Textures
All textures are procedurally generated (no external art, no network):
| File | Size |
|---|---|
assets/textures/background.png |
960x540 |
assets/textures/player.png |
64x96 |
assets/textures/hat.png |
64x32 |
assets/textures/tile.png |
96x96 |
assets/textures/coin.png |
64x64 |
assets/textures/crate.png |
64x64 |
Regenerate them with Pillow:
python3 examples/demo-project/tools/generate_textures.py
Running it as a Bevy app
src/main.rs is a minimal Bevy app. The .forge.ron scenes are editor documents, not
Bevy runtime assets yet, so paste an export into src/main.rs to run it. The custom
Orbit component used by the garden scene is defined there as
forge_demo::Orbit { radius, speed }, matching the exported BSN path.
This demo is deliberately not a member of the editor workspace: only the excluded
compat/bsn-smoke crate may depend on Bevy.