A white rocket leaving a floodlit launch tower at night on a bright orange exhaust flame, with the word LIFTOFF across the frame
A frame from the film, taken from the file below.

Download MP4 23.6 MiB

The full 1080×1920 render, never re-encoded.

Length
0:30
Frame
1080 × 1920 (9:16, vertical)
Rate
60 fps
Video
H.264, High profile, 8-bit 4:2:0
Audio
AAC-LC, 48 kHz stereo
Bitrate
6.6 Mbit/s average
File
liftoff-1080x1920.mp4
Size
23.6 MiB (24,694,344 bytes)
SHA-256
45ef20eae75dd65278784948f4c1a24742bafd31719eae8632bedabff3db2862
Source
fkkarakurt/demoscene/tree/main/demos/03-liftoff
Licence
MIT
In short

LIFTOFF is a thirty-second vertical demo at 1080×1920 and 60 frames per second of a two-stage rocket flying from a night-time launch pad to orbit. The flight is not animated: a two-degree-of-freedom trajectory is integrated once at startup, and every camera, the exhaust plume, the sunrise and the numbers in the corner of the frame are read from that one integration. Mission time advances a fixed number of seconds per beat, so the countdown ticks on the beat and the staging events land on downbeats without being nudged.

The two demos before this one were abstract on purpose; a fractal owes nobody an explanation. A rocket does. So every proportion is a real proportion, and the piece runs at 112 BPM for 14 bars, exactly 30.000 seconds.

StructurePermalink to “Structure”

BarTimeMissionSectionOn screen
00:00T−8 to T+0HOLDThe count. Floodlights, venting, and ignition three seconds before the release.
20:04.3T+0 to T+24LIFTRelease, on the first kick. A tracking camera on a lens that keeps getting longer.
50:10.7T+24 to T+152CLIMBA mounted camera. Max-Q, the sky going black, the vehicle tipping over.
90:19.3T+152 to T+176STAGECut-off. Everything drops out, because there is no air. Separation.
120:25.7T+176 to T+536ORBITThe limb, the daylight, three lines and out to black.

The clockPermalink to “The clock”

A launch to orbit takes nine minutes and this is thirty seconds long, so the clock runs fast: one second of mission time per beat through the count, two through the ascent, eight climbing out of the atmosphere, two again for the separation, and forty-five for the coast to orbit. The rate changes only where the picture cuts. Ignition at T−3 is five beats into the count, release is the downbeat of bar 2, and cut-off is the downbeat of bar 9.

Maximum dynamic pressure is the exception, because nothing schedules it: it is where the drag curve and the atmosphere happen to cross. Its caption carries no timestamp of its own; it asks the model when max-Q was and converts that back through the clock.

The trajectoryPermalink to “The trajectory”

The flight is integrated at two-millisecond steps. Thrust falls out of mass flow and ambient pressure, drag out of a Mach-dependent coefficient and an exponential atmosphere, and the attitude is a gravity turn after a single 6.3° pitch kick, with the upper stage flying linear tangent steering. There are four steering numbers in the file. Everything below came out of the integration for a 549-tonne two-stage kerosene and oxygen vehicle:

EventMission timeAltitudeSpeed
Max-Q, 31.9 kPaT+54.78.5 km
Main engine cut-offT+15282.0 km2,447 m/s
Second engine cut-offT+536167.0 km7,735 m/s

The lightPermalink to “The light”

The sun is 5.5° below the horizon, and that one number lights the whole piece. On the pad it is night: six floodlights and a black sky with stars in it, until the engines light and become by a wide margin the brightest thing on screen. Then the vehicle climbs and the horizon drops away beneath it, by roughly √(2h/R) — about nine degrees at eighty kilometres. For a sun 5.5° down the horizon passes it at 29 km, which the trajectory reaches ninety-five seconds in. Nothing animates a sunrise; the vehicle flies into one.

The exhaust is marched as a volume whose shape is a function of the air. Near sea level the jet is squeezed into a narrow column with standing shock diamonds; at altitude it opens into a bell over a hundred metres long, and the same code draws both because the air density handed to it is what changed. Its colour is a blackbody at the local gas temperature.

How it was renderedPermalink to “How it was rendered”

About 4.7 seconds a frame at 1080×1920 with two anti-aliasing samples, averaged over the piece. The average hides a factor of three and a half: the two shots on the ground cost 8.4 seconds a frame, because the vehicle, the tower, the deck, the exhaust and the smoke are all marched at once, and the orbit shot, which is sky and one small object in it, costs 2.4. Three quarters of the original cost of the ground shots came off by bounding each marched volume to the space it can actually occupy, and by refusing a noise lookup to any sample too thin to survive compositing.

← Back to all demos, or see the engine behind them.