VEDARSHMISHRA

Selected work · 16 / Code, 3D & film

Spaceflight, Rendered

A music video about spaceflight, built entirely in code.

Vehicle specs become parts, parts become vehicles, vehicles become scenes, and every frame is a function of time.

Watch the film ↓
A still from the film: Starship and Super Heavy in steam on the launch mount.
Starship and Super Heavy, from the film
Film
2 min 16 s · 8,158 frames
Format
1920 × 1080 at 60 fps
Edit
38 shots in 8 sections
Project code
10,018 lines of TypeScript

Stills from the film

The 33 engines of Super Heavy, counted one by one.
01 / 09
Counting the engines

The 33 engines of Super Heavy, counted one by one.

The engine cluster lit, seen from below.
02 / 09
The cluster lit

The engine cluster lit, seen from below.

Falcon Heavy and Starship in split frames.
03 / 09
Two vehicles, side by side

Falcon Heavy and Starship in split frames.

Four vehicles in four panels.
04 / 09
Four panels

Four vehicles in four panels.

A static fire on the launch mount.
05 / 09
Static fire

A static fire on the launch mount.

The launch site drawn as a line plan.
06 / 09
The site as a line plan

The launch site drawn as a line plan.

Telemetry used as an animation element.
07 / 09
Telemetry as animation

Telemetry used as an animation element.

Typography built from the engine layout.
08 / 09
Type from engines

Typography built from the engine layout.

An orbit drawn by its marker.
09 / 09
An orbital plan

An orbit drawn by its marker.

01 / The system

From a spec to a frame.

  1. 01Specs

    Every vehicle starts as data: one file per vehicle holding every dimension its model uses.

    spacex/specs/
  2. 02Parts

    Functions turn that data into geometry: revolved bodies, flaps, grid fins, engine bells and clusters.

    spacex/parts/
  3. 03Vehicles

    Assemblies posed from plain state (flap angles, attitude, engine states) and never rebuilt per frame.

    spacex/vehicles/
  4. 04Scenes

    38 shots choreograph vehicles, typography and telemetry against the lyrics.

    spacex/timeline.ts
  5. 05Timing

    Shots are addressed by lyric words, beats and named events from frozen timing data, never by typed seconds.

    spacex/show/song.ts
  6. 06Frame(t)

    Every frame is a function of song time alone, so frames can be rendered in any order.

    engine/engine.ts
  7. 07Render

    Headless Chrome renders each frame offline with adaptive motion blur, up to 32 sub-frames per frame; ffmpeg encodes the master.

    scripts/render.ts
  8. 08Film

    8,158 frames at 1920 × 1080 and 60 fps, cut to the song.

02 / Timing

Cut to the song.

The edit follows the song’s structure. Each shot starts and ends on a lyric word, a beat or a named event in the timing data, not on typed seconds.

  1. Intro3 shots · 22.0 s
  2. Verse12 shots · 28.2 s
  3. Pre-chorus4 shots · 18.0 s
  4. AI break2 shots · 20.2 s
  5. Chorus8 shots · 18.5 s
  6. Tag4 shots · 9.1 s
  7. Outro2 shots · 9.1 s
  8. Tail3 shots · 10.9 s

Vehicles as code

The vehicles, from the film’s own code.

Each model is the film’s vehicle geometry, exported once for the browser: the same specs and parts, without the film’s renderer. One stage, one model at a time. The figures beside each model are SpaceX’s published values.

Diameter
9 m
Super Heavy engines
33
Starship engines
6

Modeled on: Second generation (V2)

Model of Starship stacked on Super Heavy.

Starship on top of Super Heavy: the full launch system.

Drag to rotate; with a mouse, drag up or down to look from above or below. In Components, select a part.

The film

Spaceflight, Rendered.

A still from the film: the engine cluster during the countdown.

Credits

Built on the open-source pdoom-video engine by Giacomo Magnanini. SpaceX-specific systems, scenes, vehicle specs and visual layers developed for this project. Development assisted with Claude Code. Song generated with Suno.

Continue exploring.

← Back to Selected Builds