Skip to content

Changelog

March 10th, 2026

A major upgrade to the animation timeline and the overall keyframing workflow:

  • Multi-select in the timeline: Select multiple events with Shift-click, Cmd-click, or drag an event bar. Move and resize groups of events together with proportional scaling.
  • Position animation paths: Layers with position-based appear events now show visual start/end handles directly on the canvas, so you can drag keyframe positions in context instead of typing values.
  • Copy & paste layer properties: Right-click a layer to copy its visual properties (including events), then paste them onto another layer of the same type. Fully undoable.
  • Shift/Cmd multi-select in the layers panel: Range-select and toggle-select layers the way you'd expect in any layer list.
  • Syncing item drags with state effects — moving a layer on the canvas now keeps its animation end-state in sync automatically.
  • Various stability and performance improvements to the canvas overlay, viewport fitting, and state effect handling.

March 7th, 2026

Some small but impactful improvments to the editor:

  • Multi-select controls: you can now simultaneously change properties for multiple layers of the same type
  • Zooming now zeroes in on the cursor as the zoom origin
  • Small layers are more easily clicked and dragged
  • A few more matcaps
  • Text layers now show a new icon and the text content in the layer list
  • Other misc. bugfixes / optimizations

March 5th, 2026

Just a few quick things:

  • Spring: Track mouse and Momentum have a new friend, Spring! This adds some physics springiness to your mouse movements.
  • New easings: Added a couple new spring easing curves for Appear and Hover events.
  • Models are flattenable: A continuation of the flatten optimizer, we can now squeeze 3D Models into group shaders as long as they're not glass mode or using the background as an environment map.
  • v2.1.1: New SDK version fixes a video playing issue and supports the above features. An update is required to use them for existing projects.

March 2nd, 2026

The Flatten Compiler is live in beta!

Performance has always been a first class principle for Unicorn Studio. You should be able to explore and be creative without worrying whether your site will lag on big screens or crash on mobile. This is a big step toward that vision.

What is "Flatten"?

The flatten compiler figures out how to merge as many layers as possible intelligently into the same shader. This can payoff with huge performance gains. The result will be effectively as good as if you hand coded the shader professionally. Most shader GUI's are low level and node based expressly for this purpose, but now that caliber of shader composition is here in an experience that feels like designing.

You can hit the "F" key anytime in the editor to pull up the panel. You will also see it in the export window under Embed or JSON.

Before

  • Each layer is a separate shader
  • Layers are chained together using FBO's creating memory overhead
  • No culling/occlusion, regions that aren't visible will still render

After

  • Any mergable layers become one single shader
  • Flattened shaders can cull/occlude, only rendering what is visible
  • With meaningful merging, embeds become much smaller and performant
  • Animations, events, and breakpoints all work on flattened shaders

What's mergable?

  • Images
  • Shapes
  • Text
  • Distortion effects
  • Most single-pass effects

What's not?

  • Multi-pass effects (blur, blob tracking, bloom)
  • Mouse Ping Pong effects (mouse trail, mouse ripple, light draw)

This footer scene on the homepage is just one single shader!

It's in BETA for Legend subscribers

The compiler is very complicated. Despite extensive testing, I expect some scenes might not end up as expected. If something doesn't turn out the way you expect, you can simply republish with "flatten" off and let me know about it in the Discord or email.

What else?

  • The SDK has bumped from 2.0.5 to 2.1.0. This is to support the flatten compile by the addition of the FlattenedGroup layer. This is a breaking change, if you try to publish a flattened scene to a hosted embed without updating to 2.1.0, it will break.
  • You can now use matcaps in 3D models. This is a much simpler way to add baked-in reflection and lighting.
  • Nearly every effect has been scrutinized and further optimized. Performance across the board should be improved.
  • To learn more and see a 15 minute crash course, checkout the updated Performance Guide