Opening a folder on this engine differs from the cabinet in one way that matters for the animation: the cabinet swaps the content 69 frames into the decide leg, this engine swaps when its loader is done, which can take a couple of seconds for a big folder. The leg clock parked one frame short of the swap (f113) -- decided board already furled away, neighbours flown out -- so the screen sat empty for the whole load; and right after the press the engine re-grows the decided box's yellow frame, which made the board close and reopen.
The open leg now parks one frame short of the furl (f99): the decided board stays up, contents faded per the clip, as the loading state. On the swap the clock resumes from the furl, so furl (f100..113) and the new board's unfurl (f114..) play back to back. A swap that lands before the park point just lets the clock run.
The neighbours' fly-out (f86..99) plays before the swap as on the cabinet; it used to wait for the swap and then jump straight to the off-screen hold.
The decided board is remembered at OPEN_BEGIN and drawn fully open for the whole leg, past the engine's closed re-grow and past the moment the engine takes the box off the wheel for the loader (draw_overlays bridges it from the still-live box handle until it has furled).
The new content's song / back board is not drawn before the swap frame.
Verified with captures: press -> board stays open -> neighbours fly out -> contents fade to the slab -> (load) -> furl -> back board unfurls -> neighbours fly back in.
Not covered: the boxes below the decided one are moved off screen by the engine at once, so their fly-out cannot be drawn from the skin.
Opening a folder on this engine differs from the cabinet in one way that matters for the animation: the cabinet swaps the content 69 frames into the decide leg, this engine swaps when its loader is done, which can take a couple of seconds for a big folder. The leg clock parked one frame short of the swap (f113) -- decided board already furled away, neighbours flown out -- so the screen sat empty for the whole load; and right after the press the engine re-grows the decided box's yellow frame, which made the board close and reopen.
- The open leg now parks one frame short of the **furl** (f99): the decided board stays up, contents faded per the clip, as the loading state. On the swap the clock resumes from the furl, so furl (f100..113) and the new board's unfurl (f114..) play back to back. A swap that lands before the park point just lets the clock run.
- The neighbours' fly-out (f86..99) plays before the swap as on the cabinet; it used to wait for the swap and then jump straight to the off-screen hold.
- The decided board is remembered at `OPEN_BEGIN` and drawn fully open for the whole leg, past the engine's closed re-grow and past the moment the engine takes the box off the wheel for the loader (`draw_overlays` bridges it from the still-live box handle until it has furled).
- The new content's song / back board is not drawn before the swap frame.
Verified with captures: press -> board stays open -> neighbours fly out -> contents fade to the slab -> (load) -> furl -> back board unfurls -> neighbours fly back in.
Not covered: the boxes *below* the decided one are moved off screen by the engine at once, so their fly-out cannot be drawn from the skin.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Opening a folder on this engine differs from the cabinet in one way that
matters for the animation: the cabinet swaps the content 69 frames into the
decide leg, this engine swaps when its loader is done, which can be a couple
of seconds for a big folder. The leg clock parked one frame short of the swap
(f113), i.e. with the decided board already furled away and the neighbours
flown out, so the screen sat empty for the whole load -- and before that the
engine re-grows the decided box's yellow frame, which made the board close
and reopen right after the press.
- The open leg now parks one frame short of the furl (f99): the decided board
stays up, contents faded per the clip, as the loading state. On the swap the
clock resumes from the furl, so furl (f100..113) and the new board's unfurl
(f114..) play back to back; a swap that lands before the park point just lets
the clock run.
- The neighbours' fly-out (f86..99) plays before the swap as on the cabinet;
it used to wait for the swap and then jump straight to the off-screen hold.
- The decided board is remembered at OPEN_BEGIN and drawn fully open for the
whole leg, past the engine's closed re-grow and past the moment the engine
takes the box off the wheel for the loader (draw_overlays bridges it from the
still-live box handle until it has furled).
- The new content's song / back board is not drawn before the swap frame.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Closing a folder (もどる) had no wheel motion at all: the fly table only
covered the open leg (clip f27..150), fly_offset only ran for kind "open", and
the engine's 166 ms fade took the song boxes and the back board out right
after the press -- the cabinet keeps them solid until they fly out (f184..204)
and the board furls (f205..217).
- anim/wheel_decide now spans f27..255 (open leg + `return` leg, straight from
the cabinet clip); fly_offset plays the return half on the close leg: song
boxes fly out, wait off screen across the swap (f219) and the genre boxes
fly back in f234..254. f255 re-bases the clip, so the leg stops before it.
- The engine's box fade is ignored during the pre-swap half of the close leg
(box_fade); the clip channels already drive the back board's title fade and
furl.
Verified with captures: press -> boxes stay -> contents fade / boxes fly out ->
back board furls -> genre board unfurls -> contents return -> boxes fly in.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Second commit: the close leg (もどる). It had no wheel motion at all: the fly table only covered the open leg, fly_offset only ran for the open kind, and the engine's 166 ms fade took the song boxes and the back board out right after the press. anim/wheel_decide now spans f27..255 (both legs, from the cabinet clip), fly_offset plays the return half on the close leg, and the engine fade is ignored before the swap (the clip channels drive the back board's title fade and furl). Verified with captures: boxes stay -> contents fade / fly out -> back board furls -> genre board unfurls -> contents return -> boxes fly in.
Also: the engine PR Yonokid/YataiDON#165 lets the boxes below the decided folder stay for their fly-out on the open leg.
Second commit: the **close** leg (もどる). It had no wheel motion at all: the fly table only covered the open leg, `fly_offset` only ran for the open kind, and the engine's 166 ms fade took the song boxes and the back board out right after the press. `anim/wheel_decide` now spans f27..255 (both legs, from the cabinet clip), `fly_offset` plays the return half on the close leg, and the engine fade is ignored before the swap (the clip channels drive the back board's title fade and furl). Verified with captures: boxes stay -> contents fade / fly out -> back board furls -> genre board unfurls -> contents return -> boxes fly in.
Also: the engine PR Yonokid/YataiDON#165 lets the boxes below the decided folder stay for their fly-out on the open leg.
Squashing the 960-wide board texture to a few px averaged the outline away and,
because the GPU picks the mip level from the larger axis, blurred every row too;
the cabinet scales a vector shape and stays sharp. draw_board now builds a
furled board from columns: both rounded corners at 1:1 and the band / panel /
band between them scaled in proportion, each drawn from an 8 px flat slice of
itself and magnified. Narrower than both corners it becomes a solid bar with
the outline columns on either side and the flat centre between them (squeezed
corners left two hollow strokes with nothing between).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Opening a folder on this engine differs from the cabinet in one way that matters for the animation: the cabinet swaps the content 69 frames into the decide leg, this engine swaps when its loader is done, which can take a couple of seconds for a big folder. The leg clock parked one frame short of the swap (f113) -- decided board already furled away, neighbours flown out -- so the screen sat empty for the whole load; and right after the press the engine re-grows the decided box's yellow frame, which made the board close and reopen.
OPEN_BEGINand drawn fully open for the whole leg, past the engine's closed re-grow and past the moment the engine takes the box off the wheel for the loader (draw_overlaysbridges it from the still-live box handle until it has furled).Verified with captures: press -> board stays open -> neighbours fly out -> contents fade to the slab -> (load) -> furl -> back board unfurls -> neighbours fly back in.
Not covered: the boxes below the decided one are moved off screen by the engine at once, so their fly-out cannot be drawn from the skin.
🤖 Generated with Claude Code
Second commit: the close leg (もどる). It had no wheel motion at all: the fly table only covered the open leg,
fly_offsetonly ran for the open kind, and the engine's 166 ms fade took the song boxes and the back board out right after the press.anim/wheel_decidenow spans f27..255 (both legs, from the cabinet clip),fly_offsetplays the return half on the close leg, and the engine fade is ignored before the swap (the clip channels drive the back board's title fade and furl). Verified with captures: boxes stay -> contents fade / fly out -> back board furls -> genre board unfurls -> contents return -> boxes fly in.Also: the engine PR Yonokid/YataiDON#165 lets the boxes below the decided folder stay for their fly-out on the open leg.