Releases / v0.97.1
v0.97.1 Square On
2026-09-24 Engine Latest
A patch for rays that hit map meshes and models. The hit point and distance were always right, but the normal often was not: a ray straight down onto a floor built with the map tool could report a sideways normal, and a ray straight at a wall could report the floor's. Cube, Sphere and Capsule colliders were never affected, which is why a test course made of primitives worked and the same course built as a map did not.
Rays report the face they hit
raycast against a map mesh or a collidable model now returns the normal of
the face the ray struck, facing back toward where the ray came from. That is
true head-on, at an angle, and from either side of a face. A ray that lands
exactly on an edge or a corner reports one of the faces that meet there, and
never one that faces away from the ray.
Anything that reads hit.nx, hit.ny or hit.nz on level geometry gets the
right answer now: wall checks (math.abs(hit.ny) < 0.3), ledge tops
(hit.ny > 0.7), slope limits, footstep surfaces, decals and cover. A ray
cast straight down from a character's centre is exactly the case that used to
go wrong, so ground checks on map floors are the biggest change.
spherecast with a radius of zero behaves the same way.
Characters stand on their feet on map floors
A capsule's feet check the floor straight below, and on map meshes that check usually read a flat floor as too steep to stand on. The capsule then rested on its rounded bottom instead. It stands on its feet on map floors now, as it already did on primitives and terrain.
Upgrading
Nothing to change. If your game works around bad normals on map geometry, for example by casting extra rays and taking a cross product, the workaround still works and can come out.
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.