The Reef - An Animated Short under Constraints by Asad Jehan ZebThe Reef - An Animated Short under Constraints by Asad Jehan Zeb

The Reef - An Animated Short under Constraints

Asad Jehan Zeb

Asad Jehan Zeb

The Reef: building a 60-second animated short against an 8-second ceiling

5 min read
·
Just now
--
Share

Eleven reference elements, eight shots, sixteen lines of voiceover, and one rule that decides whether any of it lands.

Three maintenance drones have serviced the same sunken ocean liner for sixty years. Today one of them finds a door that isn’t on the chart.
That’s the whole film. Sixty seconds, entirely generated, and shaped almost completely by a single technical limit.

The constraint came first

Seedance 2.0 caps a generation at eight seconds. You can argue with that or you can build on it.
Eight shots at 7.5 seconds each gives exactly sixty seconds with headroom, and every prompt states its own duration explicitly so no generation ever runs against the ceiling. That sounds like a workaround. It isn’t — it’s the structure.
Working to a fixed shot length changes how you write. There’s no room to establish and pay off inside a single shot, so each one does exactly one thing and hands the next its setup. The cut does the work that a camera move would do in live action. Once you accept that, the eight-second cap stops being a tax and starts being a form, the way a sonnet’s fourteen lines are a form.

Elements before shots, always

The hardest problem in generated video isn’t making one good shot. It’s making shot five look like it belongs to the same film as shot one.
So nothing was generated as a scene first. Eleven named reference elements were built and uploaded before a single shot prompt was written:
Characters — hull, pip, meridian
Environments — wreck_exterior, wreck_corridor, grand_staircase, ballroom_reef
Props — sealed_door, coral_piano, chandelier, cutting_torch
Shot prompts then call them by tag. Shot 3 says @pip @hull @meridian @grand_staircase @chandelier and the model matches those to the uploaded assets instead of reinventing them.
One discipline matters more than the rest here: a tag only ever appears in a shot where that object is actually on screen. Add a tag to a shot that doesn’t contain it and the model will force it into frame.
Three rules decide whether the elements hold:
Character sheets go on flat neutral mid-grey, evenly lit, no environment. Anything else and the model starts inferring lighting from context it shouldn’t have.
One head only per sheet. A sheet that comes back with multiple face variants causes identity drift by shot five. Erase all but one before uploading.
Environments at a three-quarter angle, never flat head-on. Head-on plates give a camera move nothing to work with.

Three silhouettes you can read at thumbnail size

HULL — a slab. As tall as two humans stacked head to toe. Slow, literal, does the actual work. Corrects vocabulary without looking up.
PIP — a sphere the size of a human head. Fast and enthusiastic. Asks the questions nobody else asks anymore.
MERIDIAN — a needle. Three humans tall, no wider than an arm. Ancient and pedantic. Speaks in specifications. Dry.
Scale is stated in every single prompt by human-height comparison, not in metres. Models are far better at “as tall as two humans stacked head to toe” than at “3.4 metres.”
And none of them has a face. Hull has a horizontal amber light bar. Pip has a lens that the prompt explicitly says is not an eye. Meridian has a ring of twelve green indicator lights.
That’s not a style choice. Generated video cannot hold reliable lip sync, so the design removes the possibility of the failure instead of trying to solve it. All sixteen lines are voiceover. Nothing can desync, because nothing is synced.

The colour arc is the spine

This is the part that actually decides whether the film works.
Shots 1–5 — cold desaturated green-blue. The only warmth is the drones’ amber work lamps.
Shot 6 — explosive colour. The only saturated shot in the film.
Shots 7–8 — colour held, but calm. Settled.
Five shots of restraint buy one shot of colour.
Every first-half prompt ends with the instruction that saturation stays low. And the hard part — the genuinely hard part — is that when a first-half batch comes back looking beautiful and colourful, you have to reject it. A pretty shot three costs you shot six. That is the single most difficult discipline in the whole production, because it means throwing away good-looking work on purpose.
Sound does the same job. Shots one to five are enclosed, muffled, pressurised, narrow. At the cut to shot six the reverb and stereo width open hard. That acoustic bloom carries as much of the reveal as the saturation does. No music until shot six; something small and warm enters there and carries to the end.

What a shot prompt actually looks like

Every shot prompt is written in fixed blocks — scene context, active references, location map, first frame, optics, camera, action, physics, lighting, colour grade, audio, style, output settings, and positive locks.
The action block is timed against the 7.5-second budget:

And the physics block is written as behaviour, not adjectives:

Numbers everywhere — km/h, haze density as a percentage, visibility in metres, white balance in kelvin. Vague direction produces vague output.
Every prompt closes with positive locks: a restatement of what must stay true. “HULL leads and stays lowest, PIP orbits the group, MERIDIAN trails and stays highest. The group travels camera-right. Saturation stays low across the entire frame.” Stating things positively works better than listing what you don’t want.

The script

Sixteen lines. The film is a comedy about routine right up until it isn’t.

PIP: “Sixty years on the same boat.” / HULL: “Ship.” / PIP: “Sixty years and you still correct me.” PIP: “What did they use this for?” / MERIDIAN: “They descended slowly. So that others could watch them descending.” PIP: “Meridian. This one isn’t on the chart.” / MERIDIAN: “Everything is on the chart.” / PIP: “Then what’s this?”

And after the reveal, Meridian — who has spent the entire film insisting the chart is complete — gets one line:

MERIDIAN: “…That is not on the chart.”

It ends warm rather than bleak:

PIP: “Can we come back tomorrow?” / HULL: “We come back every day.” / PIP: “I know. I just like asking.”

Every prompt is published

All eleven element prompts and all eight shot prompts are published in full — with the physics, lighting and colour-grade blocks intact, plus the risks table covering what goes wrong and how each failure was fixed.
Full write-up and complete prompt library: https://asadsinc.vercel.app/work/the-reef
Originally published at asadsinc.vercel.app.
Like this project

Posted Jul 26, 2026

Created a 60-second animated short under an 8-second shot generation limit.