Skip to content

esc5221/drive-game

Repository files navigation

Nürburgring Drive

First-person Nürburgring driving simulator (web + Android).

drive-game.pages.dev

Nürburgring Drive

A first-person driving simulator running on real OpenStreetMap track geometry — Three.js rendering over a hand-written 240 Hz vehicle physics engine. One codebase, shipped to web and Android (Capacitor).

System Overview — drive-game.pages.dev/data/game_logic.html

Build log — drive-game.pages.dev/making — the full session it was built in (Korean, with an English toggle).

Features

  • Real tracks — Nürburgring (20.7 km, OSM geometry + DEM elevation), Spa-Francorchamps, and a practice circuit.
  • Custom physics (240 Hz) — raycast suspension, Pacejka combined-slip tires, clutch launch model, aerodynamics, per-surface and weather grip.
  • Weather & time — noon, Eifel morning fog, sunset, night, rain (wet road + reduced grip), and night with street lighting.
  • Feel — AudioWorklet waveguide engine sound, instrument cluster with shift lights, ghost laps, and a dynamic racing line.

Run

npm install
npm run dev      # http://localhost:8741
npm run build    # → dist/

Android (Capacitor): npm run build && npx cap sync android, then Gradle assembleDebug.

Controls

↑ / W       Throttle
↓ / S       Brake  (reverse at standstill)
← → / A D   Steer
Space       Handbrake
M           Auto / manual shift
C           Camera  (cockpit / hood / chase)
N           Weather / time of day
L           Racing line
G           Ghost lap
R           Reset to track
H           Help

Data & Credits

  • Track geometry — © OpenStreetMap contributors, ODbL 1.0 (derived via the Overpass API).
  • Elevationopen-elevation.com (SRTM, public domain).
  • Engine sound — ported from engine-sound-generator © Antonio-R1 (MIT).
  • Fonts — Google Fonts: Doto, Space Grotesk, Space Mono, Noto Sans KR (OFL / Apache 2.0).

License

Code is MIT (see LICENSE). Bundled track data is ODbL 1.0 (derived from OpenStreetMap).

Fan project, non-commercial. Car and track names and other marks belong to their respective owners and are used for identification only — not affiliated with or endorsed by Hyundai, Porsche, Nürburgring GmbH, or any trademark holder.

About

First-person Nürburgring driving simulator — Three.js + a custom 240 Hz physics engine. Web & Android.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors