01
02
03
  1. Step 1

    Track the section

    One data-sv-pin wrapper, one sticky child. The driver writes --sv-scene as you scroll.

  2. Step 2

    Give each piece an index

    Shots and steps carry --i. Distance to the scene is one max(). That is the crossfade.

  3. Step 3

    Ship it

    No observers per step, no timeline library. Three scenes here; make it thirty.