Hermes Cron Job 04e3400ab9 fix(retro): CRT vertex shader failed to compile, rendering the 3D canvas black
vec4(position, 0.0, 1.0) passes a vec3 plus two floats into a vec4 - five
components into four. Invalid GLSL ES on both WebGL 1 and 2:

  THREE.WebGLProgram: Shader Error 0 - VALIDATE_STATUS false
  ERROR: 0:71: 'constructor' : too many arguments

The whole post-processing pass failed and the game canvas read back as one
colour, 0/64000 non-black pixels. position.xy is the vec2 the fullscreen quad
needs.

Verified headlessly with SwiftShader: 55-143 distinct colours, 63750/64000
lit pixels, no shader errors, scene hash changes after throttle + pitch.
2026-10-07 13:31:23 +00:00

Wings of the 90s - Flight Simulator

A period-accurate 3D flight simulator inspired by early 90s Amiga/DOS games like Comanche, F-15 Strike Eagle, and After Burner. Runs in any modern browser.

Features

  • Authentic retro aesthetic — 320×200 VGA Mode X resolution, CRT post-processing (barrel distortion, scanlines, color quantization, chromatic aberration, vignette), EGA 16-color palette
  • Loading screen with progress bar and cycling messages
  • Main menu with keyboard navigation
  • Procedural terrain — 2000m heightmap with vertex-colored hills, water plane, low-poly clouds
  • Airport — Runway with markings, taxiway, control tower, hangars, fuel truck, windsock
  • Low-poly Cessna-style aircraft with animated propeller and retractable landing gear
  • 6-DOF flight physics — Thrust, drag, lift, gravity, ground friction, auto-leveling
  • Flight HUD — Artificial horizon, airspeed, altimeter, heading tape, vertical speed indicator, throttle bar
  • Sound — Engine drone tied to throttle, menu beeps

Controls

Key Action
W / S Throttle up / down
↑ / ↓ Pitch
← / → Roll
Q / E Yaw (rudder)
C Toggle cockpit / chase camera
Esc Pause / resume

Getting Started

npm install
npm run dev

Open http://localhost:5173 in your browser.

Build

npm run build

Tech Stack

  • Three.js r160 for 3D rendering
  • Vite for dev server and builds
  • Vanilla JS, no frameworks
  • Web Audio API for sound
S
Description
No description provided
Readme
88 KiB
0 Stars 1 Watchers 0 Forks
Languages
JavaScript 90.4%
CSS 4.9%
HTML 4.7%