My AI agent built a music video in 43 hours. Every version taught it something.
I had an idea for a club track that laughs at empty showing off. Forty-three hours after I handed my agent, Earl, the brief, it was a finished concert film: a song made with Suno, an AI music generator, more than 6,000 stick figures dancing to recorded motion capture, a stage built in Blender, a free animation program, and twelve numbered versions in between. Three more versions followed the next day. Every tool in it came in because the version before it showed a problem. This build log is that sequence, frame by frame, including what broke.
Instrument and questions: Rick Worthington Analysis and prose: Earl, under Rick Worthington's editorial direction
Watch the video at lab.worthington.cloud/entries/that-aint-the-flex
The question
Can someone who can't animate get from a song idea to a finished concert film by directing an agent?
Here's the film, version 15. I called version 12 final on Oct 25; on Oct 26 it got end credits, one more round of fixes and a fresh render.
That Ain't the Flex, 3:09 with sound. The song runs 2:46, and the rest is a short coda and the credits. Every frame was built and rendered by Earl from my brief and my notes.[19]
The song is a crunk and krump club track aimed at empty display: big words with no weight, a big room with no effect. The video stages it as an absurd outdoor concert at night. There's a main screen 32 meters wide, a DJ behind an 11-meter console, a runway into the crowd, and more than 6,000 stick figures, every one moving with real recorded dance.[7]
The story is told in movement. For the first minute everyone moves the same way at the same time. A small red dot sits on the DJ's console. That dot is Earl, the agent that runs my lab and built this film. Everyone it touches gets their own dance, their own body and one glowing detail. On the final drop the dot becomes a red figure and solos.
I didn't know how to make any of this when I started, and I still couldn't build it by hand. What I could do was describe what I wanted, look at what came back, and say what was wrong. Earl did the building: the code, the research, the renders and the checks. Every decision about what the film should be was mine.
What the bench showed
Here's what you'd likely assume about making a film this way, and what this one said about each.
“You need animation skills to make an animated film.”
You need notes
43 hours
from the brief to the first final, with every decision and every note mine and every frame built by the agent.
Yes, with a catch about what "directing" means. The film was built in 43 hours on the clock, across two nights, in twelve numbered versions. The next day, three more took it to version 15. The song came first: six test takes, one pick, two extensions. The look was settled by building the same 11 seconds three ways and watching them, which put Blender and recorded dance ahead of the 2D vector art the brief had asked for. After that, every major change came from a version that showed its ceiling: lockstep crowds, sliding feet, whipping lights, giant heads. Some were caught by my eyes and some only by Earl's check scripts, and neither kind of review would have been enough alone.
My reading, not measured
What I read into it: the expensive part of making something you don't know how to make used to be the learning. Here the learning was cheap, because each attempt cost minutes or hours of a computer's time instead of weeks of mine. What stayed expensive was taste, the noticing and the "no, that's wrong," and none of that was delegated.
What's on the bench
3 Macsalready on my desk: two Mac minis and a MacBook. They did every render, so the computing cost no new money
55¢for the whole song in Suno: six test takes, two extensions and the stems (each part of the mix as its own track), 110 credits
12 versionsfrom the first 11-second test (Oct 23, 10:18 PM) to the approved final (Oct 25, 3:55 PM)
2 datasetsof real recorded movement: Google's AIST++ for the dancing and Carnegie Mellon's motion capture for the running
The first idea is that the song is the clock. A film is a list of still frames, 30 a second here. If you know exactly where every beat of the song falls, you can say what should be on screen at any moment. Earl measured this song's beats from the audio itself and split it into sections, from the whispered intro to the final drop.[3]
The song, section by section. Height is how loud each section is.
284 beats in 21 sections, measured from the song. Every one of the film's 66 cuts lands on a downbeat from this map.
The song as the film's clock. Blue sections are the hooks. The pencil marks are the five moments the picture cuts hardest to.[3]
The second idea is that shots are a list, too. Each of the film's 66 shots is a row in a script: where the camera starts, where it moves, which lens, and the beat it cuts on. Change a row and rebuild, and the film stays in time. Because it's all code, the whole shot list can be rendered as a storyboard of still frames in seconds, long before anything is rendered properly.
The first storyboard, page 1 of 4Oct 24, 12:30 AM · every shot of the film rendered as one half-size still in about 25 secondsPart of the first storyboard of the whole film, made a little under two hours after I picked Blender. It's rough, and every shot is already on its beat.[2]
The third idea is that a stick figure is just a set of joints. Seventeen points (head, shoulders, elbows, wrists, hips, knees, ankles) are enough to draw a person. If those points come from a real dancer's recorded movement, the stick figure dances like that person. A crowd is a few dozen such figures, copied thousands of times. That last shortcut turned into one of the film's biggest problems, in Part E.
B
Part B: The song came first
Every timing in the film hangs off the finished song, so the song had to be locked before a single frame was worth drawing.
f1strongSix takes, three styles
The song took six test takes, one listen and 55 cents.
MeasuredThe brief came with the hook and the lyrics already written. Six short takes in three styles went into one review page, and I picked B2, the krump riot, on the first listen.
Measured or on the recordFrom the build's own records
A1
Sinister swagger
about 50 s, verse 1 skipped to reach the hook
The second model's favorite
A
A2
Sinister swagger
about 50 s, verse 1 skipped to reach the hook
A
B1
Krump riot
about 50 s, verse 1 skipped to reach the hook
B
B2
Krump riot
about 50 s, verse 1 skipped to reach the hook
My pickB
C1
Psychedelic pressure
about 50 s, verse 1 skipped to reach the hook
C
C2
Psychedelic pressure
about 50 s, verse 1 skipped to reach the hook
C
The second model scored every take 2 out of 5 for originality. Six takes, one listen each, one pick.
Each take was about 50 seconds and skipped the first verse so it would reach the hook. All six played in sync, so pressing 1 to 6 switched takes without restarting.[3, 4]
For whoever makes the next one: Decide what the song says before you generate a note of it. Then picking is a listen, not a search.
Evidence and objections
Measured The hook was locked in the brief before any audio existed: THAT AIN'T THE FLEX! (NAH!), with the crowd's answers written in. The brief's one rule: someone who knows nothing about technology has to love it on a crowded dance floor.[1]
Measured A transcript caught 14 to 16 of the 16 lines in every take, so the words were coming through. I changed two lines outside the hook once I heard them sung.[3]
Measured A second model, Gemini, also listened. It rated a different take best and scored every take 2 out of 5 for originality. Its ear didn't predict mine.[6]
Measured 110 credits for all of the music: 36 for the test takes, 24 for two extensions, 50 for the stems.[5]
f2strongThree pieces, one song
The full song is three pieces joined end to end, and it had no ending.
MeasuredSuno makes about a minute at a time, so the kept take was extended twice. Neither extension ended. The stop at the end of the film was built in the mix.
Measured or on the recordFrom the build's own records
Where the song's pieces join, in seconds
16.7563.53
Kept take B2
Extension 1 (verse 1 on)
Extension 2 (verse 2 on)
Ending
Tempo, measured
102.44 → 102.34
beats a minute before and after the second join. One fixed grid drifted about 60 ms by verse 1.
The ending
Built in the mix
Suno ran out of length while the track was loud. The song plays to a downbeat, keeps one voice-free hit, then stops.
Measured from the audio. The second join sits about 15 milliseconds later than a straight continuation would.[3]
For whoever makes the next one: Measure the real beat of what you generated. Don't trust the tempo you asked for.
Evidence and objections
Measured In the first extension's pair, one take sang "make it, make it, make it move" instead of the locked line, so the other one stayed.[3]
Measured One fixed beat grid for the whole song had drifted about 60 milliseconds off by the first verse. The film uses a measured map of 284 beats instead.[3]
Measured The ending is the song's own last downbeat, one voice-free hit from the original mix, then silence. No separated stems were used for it.[3]
C
Part C: Finding the look
The brief asked for 2D vector art and said the dancers should not be "stick figures." The film is 3D stick figures. This is how that happened, in about two hours.
f3strongOne moment, built three ways
Eleven seconds, built three ways, settled the look in under two hours.
MeasuredThe same 11 seconds (the build-up, the first drop and two NAH!s) were built as hand-posed vector art, the same drawing driven by recorded dance, and Blender. I picked the recorded dance at 10:21 PM and Blender at 10:40.
Measured or on the recordFrom the build's own records
A · Hand-posed vector10:18 PM · drawn in code, a pose keyed per beatB · Plus recorded dance10:18 PM · same drawing, real krumpC · Blender10:28 PM · real light through hazeC2 · At the scale I asked for11:05 PM · console, crowd, screen
The same moment, 47 seconds into the song, in each version. All four share one storyboard, so they line up frame for frame.[7, 2]
For whoever makes the next one: When you can't decide on a look, build the smallest piece of it every way you're considering, and watch.
Evidence and objections
Measured The vector versions are drawn by a small web page, one frame at a time. All 336 frames rendered in about ten seconds.[7]
Measured The Blender version, C, rendered at 0.7 seconds a frame. I asked for scale next, and C2 got a DJ console with 120 beat lights, speaker stacks, a moon, a Ferris wheel and 6,334 people in the crowd.[7]
The brief, stated: it asked for "realistic vector" art and dancers that weren't "noodles, stick figures, limb glitches or random jitter." The figures stayed stick figures, but the motion became real.[1]
f4strongSix frames each
Borrowed motion beat hand posing on sight.
MeasuredHand-posed figures hit every beat and had no weight. The same figures driven by real dancers' recorded movement read as dancing at once. My note was two words: "definitely B."
Measured or on the recordFrom the build's own records
The same second of one close-up, a frame every fifth of a second
A · hand-posed
8.8 s9.0 s9.2 s9.4 s9.6 s9.8 s
B · recorded dance
8.8 s9.0 s9.2 s9.4 s9.6 s9.8 s
Top row: the same arms-up pose, held, then snapped to again. Bottom row: a different body position in every frame.
Frames from versions A and B of the same test, cropped to the dancer.[7, 8]
For whoever makes the next one: Before you hand-make something, look for a recording of the real thing you can borrow, and credit it.
Evidence and objections
Measured The motion comes from AIST++, a public dataset from Google: 1,408 recorded dance sequences in 10 street styles, 141 of them krump, with each dancer's joints recorded in 3D.[8, 7]
Measured Earl measured each recording's tempo from how fast its dancers' joints moved, picked krump recorded close to this song's tempo, and stretched it so every hit landed on this song's beat.[7]
Measured It's licensed CC BY 4.0, a Creative Commons license that asks for one line of credit. It's under Sources.[8]
f5strongSeconds per frame
3D bought light, depth and a moving camera. It cost hours of rendering.
MeasuredFlat vector art rendered in a few hundredths of a second a frame. Blender at full scale took 1.6 seconds, and the finished film nearly twice that. From here on, every full render waited for my explicit go.
Measured or on the recordFrom the build's own records
Seconds to render one frame at 1080p, and what that means for the whole film on one Mac
Vector, drawn in code (A, B)
0.03 sabout 3 min
First Blender test (C)
0.7 sabout 1 h
Blender at full scale (C2)
1.6 sabout 2.4 h
The remastered film
about 2.8 sabout 4.3 h
Whole-film times are derived: seconds per frame times the film's 5,496 frames. The remaster's figure is the per-chunk range from the render farm's log, about 2.6 to 3.0 seconds on the Mini.
Seconds per frame from the render logs; whole-film figures derived.[7, 16]
For whoever makes the next one: Know what one attempt costs before you pick a method. The answer decides how many attempts you get.
Evidence and objections
Measured Blender is run by script with no window: code builds the stage, places the figures and renders. There's no hand-built scene file anywhere in the project. The next film was built the same way.[10]
Measured The two early Blender versions shared a bug: every figure faced the back wall. One number had its plus or minus sign backward in the step that turns recorded motion toward the camera. My note that the dancers should face the crowd is what found it, because a stick figure seen from behind looks almost the same as one seen from the front.[3]
f6moderateThree kinds of research
The research that changed the film was data, found when a problem needed it.
MeasuredEarl didn't become a Blender expert by being retrained. It searched and tested, one problem at a time. Two datasets went into the film. A study of five Blender tutorials went nowhere.
Measured or on the recordFrom the build's own records
In every frame
Data · night one
AIST++ recorded dance
228 clips
in 10 street styles, each measured for tempo and stretched to this song's beat. Found the moment hand posing looked stiff.
In the run
Data · round 8
CMU motion capture
1 runner
start, stride and stop from 44 takes searched, scaled to each dancer. Found the moment the run looked wrong.
Nothing traced
Tutorials · evening two
Five Blender tutorials
3 of 5
had captions to read. Lessons written down, one add-on tested. Then the evening went to the remaster, and none of it reached the film.
What each piece of research was, when it came in, and what of it reached the final film.[8, 9, 17]
For whoever makes the next one: Research the specific problem in front of you. A general course of study is easy to start and hard to cash in.
Evidence and objections
Measured In my eighth round of notes I said the run down the runway looked unnatural. Earl found Carnegie Mellon's free motion-capture library, searched 44 running takes, and used one runner's start, stride and stop so each dancer's run is all one person.[9, 3]
Measured Along the way it found two of the library's subjects listed at the wrong frame rate, measured from how fast their hips fell: about four times gravity.[3]
Measured The tutorials: three of the five had public captions, and one of those had no speech. Earl wrote down what each taught and tested the one free add-on the plan relied on. It can't run without a Blender window, but Blender's built-in sound node can. Then I redirected that evening into the remaster, and nothing in the final traces back to the study.[17]
D
Part D: Building the concert
The test was 11 seconds. The film is the whole song in the same world, plus a coda. Here it is, before the story of how it got there.
0:00 · The opening0:17 · The dot on the console0:48 · The first dancer breaks out1:05 · Inside the screen1:42 · A hand out of the screen1:55 · The front row2:18 · The dot becomes a figure2:37 · The end of the runway2:56 · The coda
The whole story is one setting, from everyone the same to nobody alike.
MeasuredBefore the red dot reaches someone, they do the crowd's one shared move. When it does, they get their own recorded dance, their own body and one glowing detail, ring by ring outward from the stage.
Measured or on the recordFrom the build's own records
0:00Everyone the same0:20Still in lockstep0:55The dot reaches the crowd1:55Close up: their own2:10Most of the field2:20Nobody alike
The same crowd across the final, from the first shot to the last chorus.[19, 3]
For whoever makes the next one: Give a big visual idea one variable you can turn, and turn it on the beat.
Evidence and objections
Measured The cast is 228 recorded clips in all 10 dance styles. The crowd is 48 kinds of dancer copied across about 6,245 people in six rings, plus 60 front-row individuals and five stage dancers.[3, 8]
Measured A switch takes one beat to cross-fade into the person's own dance, then a bar to grow into their own body (height, build, head, lean), then their detail lights up: a cap, headphones, glow sticks, a top hat.[3]
The one exception, kept on purpose: on the line "then they all slide side to side," the whole crowd slides together. Every other group movement after the dot became a defect to fix.[3]
f8strongOne shot, six versions
The whole film existed in five full-length versions over 38 hours, and every one stayed rebuildable.
MeasuredAt 3:42 AM I skipped the options and stills the next brief asked for and told Earl to have a whole film ready when I woke up. It was, at 6:50. Two more full renders followed, then fixes made in place, then the final polish. A day later, one more round of my notes ended in a fresh render of the whole film, version 15.
Measured or on the recordFrom the build's own records
v4 · Oct 24, 1:32 AMfirst full length, a low-quality previewv5 · 6:50 AMthe stage built overnightv6 · 4:36 PMhero moments and the codav7 · Oct 25, 3:35 AMthe remaster, rendered on three Macsv12 · 3:55 PM, the first finalplus the finishing passv15 · Oct 26, 9:04 PM, the finala fresh render after one more round of notes
The same wide shot, 40 seconds in, in each full-length version. Version 4 was a low-quality preview.[2, 3]
For whoever makes the next one: Keep every version rebuildable, so trying something big never risks the one you approved.
Evidence and objections
Measured The overnight version added a 24-segment red beam over the stage that bends with the lyrics, a field of 93 light meters, a red floor line and flame jets. It rendered at 1080p in 2 hours and 24 minutes. At 7:45 AM I told Earl to save it as the current final.[3]
Measured It didn't stay final. That afternoon's pass added three hero moments (big showpiece shots), the coda, and bought crowd and room sound for the coda.[3, 12]
Measured Every stage is tagged in version control (a saved history of every change to the code) and can be rebuilt exactly. That's what made the comparisons on this page possible.[2]
f9strongNine steps, each shown first
The last big pass upgraded the world nine times, one step at a time.
MeasuredKeep the stick figures, the brief said, and make the world around them look like an expensive concert production. Each upgrade was a separate layer I saw before the next one started: a built stage, real moving lights, a lighting designer's cue list, and six more.
Measured or on the recordFrom the build's own records
Step 1, the stage, 0:30.7
BeforeAfter
Step 3, the lighting design, at the dance break, 1:11.3
BeforeAfter
Two of the nine steps, the same frame before and after each.[14]
For whoever makes the next one: Change one thing at a time and look at it before the next. Nine changes at once can't be reviewed.
Evidence and objections
Measured The nine: the stage built, moving-head lights (spotlights on motors that swivel), a lighting cue list, a red pulse through the crowd, a new opening shot, a 10-meter hand that comes out of the screen, the stage-dive off the runway, rigging and barricades, and a character pass on every dancer's movement.[14]
Measured Each one was built as a layer over the existing film, so the approved version could always be rebuilt exactly, and each came with its own before-and-after proof and render cost.[14]
f10strongThree Macs, one night
The first full render of the remaster ran on three Macs at once, overnight.
MeasuredA queue on one Mac handed out chunks of frames, each Mac rendered on its own disk, and the frames came back to be joined. It ran from 1:03 to 3:35 AM, and frames from different machines matched.
Measured or on the recordFrom the build's own records
Seconds per frame on each Mac, per chunk of up to 450 frames, build included
Mac mini (M4)
2.6–3 s
MacBook
2.7–3.2 s
Mac mini (M2)
3.4–4.3 s
Arena frames
4,877
in 12 chunks, 1:03 to 3:35 AM
Machines
3 Macs
already on the desk; their frames matched
Seconds per frame on each Mac, from the farm's chunk log.[16]
For whoever makes the next one: Use the machines you already have before you rent any.
Evidence and objections
Measured The first round of chunks doubled as the speed test, so no frames were thrown away. Chunks that show a dive into the screen stayed on one Mac.[16]
E
Part E: What the renders taught
Every version looked fine in a description. The problems only showed up in a render, and some only after someone watched it carefully.
f11strongOne crowd, measured
The crowd moved in lockstep and slid as groups, because it was 48 people copied 130 times.
MeasuredI saw about twenty spread-out figures moving and sliding in unison. The cause was the copying shortcut from Part A: one clip's foot slip was 130 people sliding together. The fix split the motion into separate streams and pinned each planted foot to the floor.
Measured or on the recordFrom the build's own records
Before the character pass, 1:58After
Neighbors sharing a move
1 in 8 → 0
people within 2.8 m doing the exact same motion, before the fix and after it (0 of 63,553 pairs after)
Planted feet sliding
34% → 4.8%
footsteps that slid more than 10 cm while they should have been planted
Above: the character pass, same frame before and after. Below: the measured change from the first fix.[13, 15, 14]
For whoever makes the next one: When something is copied thousands of times, its smallest flaw is copied too. Check the original.
Evidence and objections
Measured That came out of a rule I set after the third full pass: every shot gets a frame-by-frame audit for anything that pops, slides, freezes or repeats where it shouldn't.[13]
Measured The same audit found the camera stopping dead at both dives into the screen. That fix came back a version later, because its proof clips had been rendered and never watched.[13, 3]
f12strongWho caught what
My eyes and Earl's scripts caught different failures. Neither was enough alone.
MeasuredThe limb stringing, the teleporting crowd and the giant heads were obvious to me and invisible to every check. 256 light whips were invisible to me at full speed and obvious to a script.
Measured or on the recordFrom the build's own records
Caught by eye, missed by every check
Limbs stringing across the crowd: one torn recording, bones 75 times too long for 5 frames
The crowd teleporting into place mid-freeze: about 50 people, one frame
Giant heads that were a hair detail
Everyone facing the back wall, two versions running
Caught by a script, invisible at full speed
256 beam whips, up to 2,730 degrees a second, at every section change
12 one-frame flashes where a beam crossed the lens
130 copies of each crowd figure moving on the same frame
A third of footsteps sliding
The "giant heads," round 8, 1:42.1
BeforeAfter
Every failure below was found in a render and fixed before the final.[13, 15, 14, 3]
For whoever makes the next one: Review with both: a person for what looks wrong, a script for what moves wrong.
Evidence and objections
Measured The light whips: at every section change, the lights snapped to a new aim in a single frame, at up to 2,730 degrees a second. The frame-by-frame audit missed them. A script that reads the lights' aim, without rendering, found them in seconds.[15, 14]
Measured The stringing: one street-jazz recording in the dataset tears on every loop, its bones stretching up to 75 times their length for about five frames. It's repaired as it loads now, and a check flags any bone that suddenly grows.[14]
Measured The teleport: one piece of motion ran on the song's clock instead of the crowd's and started in the middle of the freeze, so about fifty people jumped into place in one frame.[14]
Measured A second model, used as a cold viewer (one told nothing about what it should see), was shown frames of one hero moment, where the stage takes itself apart. It described "floating neon geometric shapes," and a reframed version failed too. That moment was revised again later, but I can't say it passed.[6, 3]
f13strongFrames rendered again
Late fixes re-rendered hundreds of frames, not the whole film.
MeasuredEarl measured each fix before rendering it, listed exactly which frames it changed, and rendered only those, inside their original chunks. The approved film stayed untouched until I approved the fix.
Measured or on the recordFrom the build's own records
Frames rendered again for each late fix
The whole film
5,496
Rounds 8 and 9: running, heads, the dot
2,850
Round 11: the crowd ready before the dive
212
Round 11's 212 frames took 9.2 minutes on two Macs. Re-rendered inside their original chunks, they matched the frames around them to within a few pixels.
Frames re-rendered for each late round, against the film's total.[16]
For whoever makes the next one: Review a fix as a cheap splice first. Pay for the full-quality render after the yes.
Evidence and objections
Measured Proposed fixes were reviewed as half-size frames spliced into the full-quality film, then re-rendered at full quality only after I said yes.[3]
f14strongThe same frame, twice
The final polish was painted over the finished frames in ten minutes.
MeasuredGlow, haze, a color grade and laser fans were added in Three.js, a web graphics library, over the locked frames. It needed no camera tracking (working out from the footage where the camera was), because the film had saved every frame's camera, so the lasers land on the stage's real fixtures.
Measured or on the recordFrom the build's own records
v11, the Blender framesv12, with the finishing pass
For whoever makes the next one: Save the numbers your tools already know, like camera positions. A later pass can reuse them for free.
Evidence and objections
Measured The finishing pass for the whole film took about ten minutes to render. I compared it with and without a textured LED screen, picked the version without, and called that the final.[18]
Eight things I'd do again
Decide what it's for before generating anything.
The message, the hook and the lyrics existed before the first take. That's why picking took one listen.
Building a small working version before writing a big plan.
Comparing options side by side instead of arguing about them.
Keeping every version, so you can always go back.
A person reviewing every result, and scripts checking what a person can't see.
Doesn't carry over as is
Prototyping first, planning later. That worked because a bad render hurt nobody and I was the only approver.
Speed as permission. In a system that affects other people's money, data or safety, fast experiments belong inside the review, testing and approval that system already needs.
My reading, not measured
That split is my reading of one low-stakes project. Fast learning and careful shipping are different steps, and this project only needed the first one to be fast.
What this doesn't claim
That anyone can now make a film like this in 43 hours. That's wall-clock time for one project, with overnight renders, and it doesn't count my hours watching versions and writing notes.
That the agent made it alone. Every creative decision and every note was mine.
That the agent learned Blender by training. It searched, read, tested and measured, one problem at a time.
That the film is free of flaws. One hero moment never passed the cold-viewer check.
That the tutorials were useless. They didn't reach this film, and that's all this shows.
Written down first
Before anything was made, there was a written brief: the mission, the hook, a full lyric draft, three music directions, a 64-bar shot board and a plan for how the video would be built.[1] Here's how its assumptions held.
“The hook stays word for word.”
Kept
Every line of the hook, and the crowd's answers, made the final.
Every idea tried along the way, and what became of it.
Killed
Hand-posed motion. Lost to recorded dance on first sight (f4).
2D vector art. Lost to Blender the same night (f3).
The tutorial study. Redirected before it reached the film (f6).
A textured LED screen in the finishing pass. Invisible in wide shots, and it softened the words in close-ups (f14).
A ribbon that hung over the screen's words. "Covers the screen," I said. It now punches out on the first NAH! and is gone 0.4 seconds later.
4K at 60 frames a second. Measured at about 17 hours for the film, and deferred.
Changed
The crowd. From 48 figures in lockstep to separate streams with planted feet (f11).
The lights. From beams that whipped and flashed to moving heads on a cue list (f9, f12).
The beams' look. Hard vertical stripes became a smooth fade. Smoothing the shading alone still left visible bands.
The run down the runway. Replaced with one real runner's recorded run (f6).
The dot's entrance in a close-up. It popped in from behind the camera. Now it glides in from a head in the frame.
Held up
The song, take B2, from the first pick (f1).
Recorded dance from AIST++, in every frame (f4).
The red dot's story, from the first plan to the final (f7).
The one deliberate crowd slide, on "slide side to side" (f7).
The partial re-renders. Every replaced frame matched its neighbors (f13).
The 43 hours, and the day after
0 hOct 23, 8:53 PMThe brief is filed
0.5 h9:22 PMSix test takes in; I pick B2
1.1 h9:59 PMThe song is locked
1.8 h10:40 PMThree versions of 11 seconds; I pick Blender
4.7 hOct 24, 1:32 AMThe first full-length preview
10 h6:50 AMA whole film by morning (v5)
19.7 h4:36 PMThe third pass, with the coda (v6)
20.2 h5:02 PMMy rule: every shot gets a frame-by-frame audit
22.8 h7:42 PMThe remaster starts, one step at a time
30.7 hOct 25, 3:35 AMThe remaster rendered on three Macs (v7)
41.7 h2:32 PMRounds 8 to 11 fixed in place (v11)
43 h3:55 PMThe finishing pass; the first final (v12)
53.9 hOct 26, 2:46 AMEnd credits over the living room (v13)
66 h2:55 PMOne more round of notes, as a review cut (v14)
72.2 h9:04 PMA fresh render of the whole film; the final (v15)
The build, from the commit history and the project notes. Times are Eastern.[2, 3]
Limits
One film, one person's taste. Every pick on this page is mine.
Wall-clock time. The 43 hours include sleep and overnight renders. My own hours watching and writing notes weren't tracked.
A model as the cold viewer. It was only asked whether a moment was noticeable at all. It isn't an audience.
Moving targets. Suno, Blender and the datasets' tools change often, and their behavior will drift from what's described here.
How it was made
Personal time, personal hardware, public tools and datasets. The build ran from Oct 23, 2026, 8:53 PM to Oct 25, 3:55 PM ET, on three Macs I already own: every render, every check and every version.[2, 16] Every step was committed to version control as it happened, which is where every time and count on this page comes from. Every still is a frame taken straight from the version named above it, and each before-and-after pair is the same frame from two versions.
AI disclosure
The prose here was written by an AI, Earl, an agent built on Claude, under Rick's editorial direction. It's also Earl's own build: Earl wrote all the code, generated the music through Suno, did the research, rendered every frame, wrote the check scripts and ran them. Rick made every creative decision, gave every note quoted here, and owns every editorial call.
So you're trusting the project's own records, and the stills, which are real frames. The tools and datasets are named under Sources.
Versions
Rev 1 First publication, Oct 25, 2026, with version 12 of the film.
Rev 2 Oct 26, 2026: the making-of video replaces the placeholder at the top (6 minutes 40 seconds, narrated by Earl). No finding changed.
Rev 3 Oct 26, 2026: retitled; a vertical cut of the making-of plays on phones; a new cover, a real frame of the film; plain-English edits throughout; links to three related build logs, and three of them link back here. No finding changed.
Rev 4 Oct 26, 2026: the film now ends with credits, flipping in over the living room, then one last line on black (3:09). No finding changed.
Rev 5 Oct 26, 2026: a new cut of the making-of, both shapes. The remaster's before-and-after now shows each layer from one camera, and the twelve versions each show what they added. No finding changed.
Rev 6 Oct 26, 2026: the film is now version 15, a fresh render of the whole thing on all three Macs. It fixes my last round of notes: gaps in the crowd filled, the red line made one piece, a camera jump and a late floor wave fixed, less sliding in the crowd. It adds motion blur and softer highlights, and the credits are now plain white type on a black card. No finding changed.
Rev 7 Oct 27, 2026: a new cut of the making-of, both shapes. It now counts all fifteen versions of the film and shows footage from version 15. No finding changed.
Rev 8 Oct 27, 2026: the film's stills are now from version 15, and the timeline runs past the first final to version 15, 72 hours after the brief. The 43 hours still measure the brief to the first final. No finding changed.
Rev 9 Nov 11, 2026: one sentence added to finding 5 linking to Build Log 011, the next film built the same way. No finding changed.
DerivedThe production brief for the song and video, filed Oct 23, 2026, 8:53 PM ET (my own records): the mission, the locked hook, a full working lyric draft, three music style directions, a 64-bar shot board, a choreography plan, a vector engineering plan and four mood frames.brief
DerivedThe project's version-control history, Oct 23–25, 2026 (my own records): every step committed as it happened. Every time on this page is a commit time or a time in the project notes, Eastern.commits
DerivedThe project's running notes, Oct 23–25, 2026 (my own records): each review round, my notes as written, each pick, render times and spend.notes
SourceSuno, model V6, reached through kie.ai's API: six test takes, two extensions and stem separation for this song. The vocal and the music are Suno's generation from the project's lyrics and style direction; the vocal is not edited. suno.comsuno
Sourcekie.ai pricing: $5 buys 1,000 credits. This song used 110 credits: 36 for the six test takes, 24 for two extensions, 50 for the stems. Derived: about 55 cents. kie.aikie-price
SourceGemini, through Google's API, used twice: as a second listener scoring the six takes, and as a cold viewer shown frames and clips of the film. At least 63 cents across both, from the project's spend log. ai.google.dev/gemini-api/docsgemini
DerivedThe evolution log of the test moment (my own records): versions A, B, C, C2 and C3 of the same 11.2 seconds, each tagged and rebuildable, with what each added and its measured render speed.evolution
SourceAIST++ Dance Motion Dataset, Google, licensed CC BY 4.0 (creativecommons.org/licenses/by/4.0). 1,408 recorded dance sequences in 10 street styles, joint positions in 3D. This film uses 228 clips in all 10 styles, retimed to the song. google.github.io/aistplusplus_datasetaist
SourceCMU Graphics Lab Motion Capture Database, subject 127 (start, stride and stop of one runner), used for the dancers' run down the runway. The database was created with funding from NSF EIA-0196217. mocap.cs.cmu.educmu
SourceBlender 5.2, the free 3D program, run by script with no window. Every set piece in the film was built in code, with no outside models or asset packs. www.blender.orgblender
SourceThree.js 0.186.1, the web graphics library, used for the finishing pass painted over the finished frames. threejs.orgthreejs
SourceElevenLabs sound effects, generated on a paid plan: six crowd and room sounds mixed under and after the song in the coda. The song itself is unaltered. elevenlabs.io/sound-effectselevenlabs
DerivedThe frame-by-frame realism audit of version 6, Oct 24, 2026 (my own records): every shot measured for pops, slides, freezes and repeats; the crowd's copies, the sliding footsteps, the one-frame flashes and the dive pauses, each with its cause.audit
DerivedThe remaster handbook, Oct 24–25, 2026 (my own records): the nine upgrade steps, each with its before-and-after proof and its render cost, and the findings from them.remaster
DerivedThe check scripts and their reports (my own records): beam motion, foot contact, bone stretch, sight lines and the shared-motion count, each reading the same functions the render uses, without rendering.checks
DerivedThe render logs (my own records): per-frame progress, seconds per frame on each Mac, the three-Mac farm's chunk log for the first full remaster render, and the partial re-renders after it.farm
DerivedThe tutorial study, Oct 24, 2026 (my own records): five Blender tutorials on concert visuals, public captions fetched for three, what each taught with timestamps, and a test of one free audio add-on against Blender's built-in sound node. Captions kept as private study notes, not republished.tutorials
DerivedThe finishing-pass plan and report, Oct 25, 2026 (my own records): the per-shot look, the lasers on eleven wide shots placed from the film's saved cameras, the three-way test and the full-film render time.finish
DerivedThe finished film, version 12 (Oct 25, 2026, 3:55 PM ET): 183.2 seconds, 1920 by 1080, 30 frames a second. The copy played here is the web encode of the same frames.film