Bevy Forge 0.1.0: visual scene editor for Bevy 0.20 BSN
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
# 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:
|
||||
|
||||
```bash
|
||||
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:
|
||||
|
||||
```bash
|
||||
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.
|
||||
Reference in New Issue
Block a user