Releases / v0.74.0
v0.74.0 Rest Easy
2026-08-21 Engine Latest
A room full of settled props stops costing what a room full of falling ones does, a streamed level actually finishes its first navmesh bake, water reacts the moment it exists, and packages get a read-only look at tilemaps and a warning before you install something.
A room full of resting props costs almost nothing
Two hundred ordinary Dynamic props — mugs, chairs, litter — sitting completely still could cost the entire frame budget several times over, because nothing in the physics solver ever stopped paying for them. A prop mid-flight and a prop that has sat untouched since the level loaded were the same amount of work.
A body that has been slow enough for long enough now goes to sleep: no gravity, no collision solving, nothing, until something actually touches it — a moving platform, a grabbed prop being let go, a script writing its velocity, or the ground underneath it disappearing. A settled room of props now costs close to what the same props cost as static geometry, not what a room of things actively falling does. Nothing changes in how you set a body up; sleeping is automatic and invisible from a script's point of view.
A streamed level finishes its first navmesh bake
On a level that streams its geometry in as you move rather than shipping it all baked ahead of time, automatic navmesh rebaking could get stuck re-measuring the whole scene on nearly every tick — and, separately, a level with no hand-placed geometry to bake at editor time had no way to get a navmesh at all until something forced one.
Automatic rebaking now waits for the level to actually hold still before it re-measures anything, however long that takes, and the very first bake on a level with nothing baked yet builds a mesh instead of refusing. Dragging a wall and waiting now genuinely produces a fresh navmesh; it isn't a special case any more.
Water reacts the moment it's there
Spawning, moving, resizing, or destroying a water volume while a game is running could take a frame or more to reach the physics solver, so a pool that appeared mid-session could be there to look at and not there to swim in — or the other way around.
Water is rebuilt every frame now, the same way gravity already was, so what you see and what the solver knows about agree from the moment a volume exists. A water volume can also carry a Material of its own — its own specular highlight and its own alpha — and can be exempted from a project's retro dithering the same way any other material can.
Packages can read a level's tilemap
An editor package could see everything else about a 2D level except its
tilemap, which meant a level tool couldn't tell where the floor actually was.
tilemap.of(id) hands back a read-only handle — grid size, tile size,
tileset, and per-cell lookups by index or by world position, including
solidity and tags — documented alongside the rest of the package API.
The package browser warns you before you install
The catalogue now carries what a package's manifest declares it needs — network access, file access outside its own folder, opening your browser — and the Browse tab shows it before you install, not only after, when the consent dialog would otherwise be the first you hear of it.
Smaller things
- A script calling
find("Lighting")used to always get back nothing; the Lighting node has a Transform like every other node now, andfindsees it.
Upgrading
Nothing to do. A project with resting props, a streamed level, or water volumes just runs better; existing scripts and packages are unaffected.
Floptle Hub
Engine
The binaries are not signed yet. On macOS, right-click the app and pick Open the first time. On Windows, if SmartScreen appears, pick More info then Run anyway.