Devlog/FPS Lab

FPS Lab 0.8.8 - New animation features

FPS Lab v0.8.8 3 min read
FPS Lab 0.8.8 - New animation features

Animation that doesn't snap

This update is all about the animation system. Three things, and each one removes a workaround you were probably already writing.

Clips can now blend into each other

The Play Animation node has a new Blend input: how long, in seconds, the object takes to drift from the pose it's in into the new clip. Leave it empty and you get the old behaviour — an instant switch.

0.15 to 0.3 is the range you want. On a door nobody ever noticed the snap; on a character it's a visible pop — the gun jerks, the foot slides. Now it doesn't.

The fade starts from the pose your objects are actually in, not from where the outgoing clip happens to be. That matters more than it sounds: it means blending works correctly out of a clip that already finished and is holding its last pose, out of a rest pose no clip ever played, and out of a transform a script just moved. Rotations take the short way round too — fading from 350° to 10° crosses zero instead of unwinding backwards.

On Animation End

A new event node. When a non-looping clip reaches its last frame, it fires — and its Clip output tells you which one finished.

That's the end of polling Is Animation Playing in every On Update just to know when a reload is done. Wire On Animation End straight into Play Animation with your idle clip and a small Blend, and the weapon settles back by itself. (A looping clip never ends, so it never fires — and Stop Animation isn't an ending either.)

Frame events: "play the footstep here"

Often it isn't the end of a clip that matters but one moment in the middle — the bullet leaving the barrel, the boot landing, the magazine clicking home.

The Animation tab has a new Events row. Put the playhead where it should happen, press + Event, double-click the marker to name it. Drag markers to move them, right-click to delete.

When playback reaches one, the name is broadcast: any script with a matching On <name> node runs. So the script that plays your footstep sound doesn't have to live on the animator — it can stay on the character, on the weapon, even on the HUD.

Some details worth knowing:

Existing projects load unchanged: Blend starts at 0, and a clip with no events behaves exactly as before.

Also: two new handbook chapters

The beginner handbook got a chapter on all of the above, and a second one on things that were in the editor but never written down:

Get FPS Lab Comment on itch.io FPS Lab overview