Pilot Matter
A browser-based 3D flight simulator built with Three.js. Fly over five procedurally generated worlds, each assembled out of elements that are drawn by algorithm rather than placed as assets, all rendered in real time with no build step required.
Start here
-
Quickstart
Serve the project, open the page, and get the aircraft climbing. The essentials and nothing else.
-
Getting started
What a browser has to support, and every way to serve the project locally.
-
Controls
Every key the simulator reads, and how the menus are worked with the keyboard and the mouse.
-
Cheatsheet
Keys, options, elements, and API calls on one dense page, for a reader who has read the rest.
Flying
-
Features
Everything the simulator does, from the flight model to the endless world it is flown over.
-
The flight model
Throttle, lift, stall, the configured start, and what a runway does to an arrival.
-
The terrain
Fractal noise, the element registry, the five assembled worlds, and the world with no edge.
-
Game modes
Runway Landing and Flying through Loops, four stages each, and what each gets harder at.
Building on it
-
Simulator API
The Pilot API flies an aircraft against a host's own world. The Matter API hands a host the world.
-
Full API reference
Every option and everything that comes back, for both halves, with the stability guarantee.
-
Project structure
Every file in the project and what it holds.
-
Testing
What the zero-dependency suite covers, and the one command that runs it.
What it is built on
One renderer, no frameworks, no bundler, and no dependencies beyond it. The whole of it runs directly in a browser through ES modules and an import map. The tech stack is a single row.