Releases: outerframehq/frame-engine
Release list
Frame Engine 0.3.0: projects, physics and model import
The biggest release so far. The editor went from a single fixed scene to a full project workflow, the engine got real physics, and you can now bring your own Blender models in.
Projects
- A launcher to create, open and manage projects, each a folder with its scene and a
project.ronmanifest - Per project settings (name, description, version), recent project cards, and a two step delete
- A Play button that runs the project in its own clean game window, no editor chrome
Physics
- Collision response: overlapping entities push apart, with a
Staticmarker for floors and walls - Opt in gravity with a
Gravitymarker, and velocity arrest so things land and rest - Collision boxes fit the mesh: planes are flat, imported models use their real proportions
Editor
- Undo and redo (Ctrl+Z / Ctrl+Y), coalesced so a drag is one step
- A translate gizmo: drag the axis arms to move an entity
- A flythrough camera: hold Alt to look with the mouse and fly with WASD
- A read only Source Control tab showing branch, upstream state and changed files
Scripting
- Structured values:
pos,vel,scaleandcolorwith fields and vector maths. The old flat names still work - The Script Editor flags unknown variables as you type, with line and column
Models
- Hand rolled OBJ import: File > Import model brings a Blender export in, renders it, and fits collision to it
- An Assets tab with rendered previews, folders, and a move flow to organise files
Scenes saved in 0.2.0 load unchanged. Full details in CHANGELOG.md.
Frame Engine 0.2.0
This is the first release of Frame Engine that you can actually build something with. You can make a scene, script it, watch things collide, set the editor up how you like, and save your work. It's still early, but it's past being just a tech demo now.
0.1.0 was a working engine and an editor shell. This release is where the real authoring shows up.
What's new
You can dock the editor panels now. The Viewport, Scene, Inspector and Script Editor are tabs, and you can drag them around, tab them together, or split them apart while the editor runs. The viewport is see-through, so the 3D shows behind wherever you put it.
Entities can run scripts. There's a shared script library that runs on Rhai. You write a script once in the Script Editor, which has a line-number gutter and checks your syntax as you type, and then you assign it to entities from the Inspector. A script can read the tick count and whether its entity is currently colliding. There's a guide in SCRIPTING.md.
Entities can be a cube, a sphere or a plane now, and you pick the shape per entity in the Inspector.
Collision works as detection only. Overlapping entities turn red, and a script can read a hit flag to know it's touching something. Nothing gets pushed apart yet.
You can save and load scenes. Open and save to any path with a normal file dialog, or use F5 and F9 to save and reload the current scene. The files are plain readable RON.
Entities also have their own colour and a per-axis scale, both editable in the Inspector and saved with the scene.
Smaller things
There's a logical input system, and you can drive a Controlled entity with WASD while the sim runs. The toolbar has File, Edit, View and Help menus that do the same things as the keyboard shortcuts. The editor has a logo and a proper app icon. And the segfault on closing the window is fixed (it was a GPU teardown ordering issue on Wayland).
Still early
Collision only detects, it doesn't respond. There's no undo, redo or gizmos yet. Projects, meaning a project file and a launcher to open them, are the main thing coming next, and they'll build on the save and load that landed here.
Full changelog: 0.1.0...0.2.0
Preview of the Editor

Frame Engine 0.1.0
Frame Engine 0.1.0
A hand-rolled simulation engine in Rust, with a companion 3D editor.
Status: early tech demo. The editor has the basic pieces in place, but it is nowhere near the stage where you could build a real game with it. There is no input system feeding the simulation, no collision, networking, audio, or asset pipeline, and every entity is still a plain cube. Treat this release as a look at the direction the engine and editor are heading, not a usable game-development tool.
Engine
- Deterministic fixed-timestep clock (30 ticks per second) with spiral-of-death protection, in its own
core/module. - Hand-rolled ECS-style world: entities as indices, component data in per-component storage, with runtime spawn and despawn.
- Generic
ComponentStorage<T>wired into the world, so adding a component type is one field. - Position and velocity components, and a movement system that advances entities each tick.
- Scene serialization to and from human-readable RON.
- Read-only ASCII debug renderer for headless use.
- Library and binary split, so the engine is importable by other crates.
Editor (frame-editor)
- Native window (winit) with a 3D viewport rendered on the GPU (wgpu): instanced shaded cubes, a perspective camera, and a depth buffer for correct occlusion.
- Orbit, pan, and zoom camera (left-drag pan, scroll zoom, middle-drag orbit).
- Click-to-pick entity selection with highlight.
- Live entity editing: move, spawn, and despawn from the keyboard, and edit the selected entity's position and velocity from the Inspector panel, written straight back into the world.
- Scene save and load (
F5andF9), with a scene loaded on startup. - A docked, resizable egui panel layout: a top toolbar, a right inspector dock (Scene list and Inspector), and a bottom console dock (live Output log and a Terminal placeholder).
- Runs the simulation live on the engine's clock, with play, pause, and step.
Not yet
- No input system feeding the simulation. The controls are editor-only.
- No collision, networking, audio, or asset pipeline.
- Every entity renders as the same cube, and shading is a single fixed light.
- Picking is an approximate screen-space box, not a true ray-versus-geometry pick.
- Panels are fixed in place. Movable, dockable panels come later.
- The toolbar menus (File, Edit, View, Help) are placeholders.
Known issues
- The editor can crash on window close during GPU teardown. It does not affect editing or saved scenes.
Build
Requires [Rust](https://rustup.rs).
- Engine (headless):
cargo run -p frame-engine - Editor (3D window):
cargo run -p frame-editor
Editor controls: Space play/pause, S step, left-click select, Esc clear, arrows / Page Up / Page Down move selection, N spawn, Delete despawn, F5 / F9 save and load, left-drag pan, scroll zoom, middle-drag orbit, H toggle the controls overlay.
MIT licensed.