The Undercut generates a new circuit for every race. No two tracks are the same. Here's how a blank canvas becomes a fully playable circuit in under a second.
Every track starts as anchor points on a ring — like numbers on a clock face. Each point sits at a random distance from the center, giving the shape an organic feel. A gap between two points naturally becomes the main straight — the fastest section where the pit lane and start/finish line live.
Once the path exists, the game measures curvature at every point. High curvature = slow corner. Near zero = fast section. From curvature alone, a realistic speed profile emerges:
A forward pass computes max speed at each point
A backward pass caps speeds based on braking zones
Each section gets classified: Accelerating, Braking, or Cornering
These zones drive everything — tire wear, overtaking opportunities, dirty air effects, and mistake probabilities.
The game computes an outside-apex-outside racing line for every generated circuit. No manual tuning — pure geometry.
Nothing is hand-placed:
Kerbs on the inside of corners
Tire walls on the outside — height scales with danger
Sand traps in front of barriers — depth follows curvature
Grandstands along the fastest straights
Pit lane parallel to the main straight with smooth entry/exit
Same algorithm, different parameters:
High-Speed — 10-12 corners, 5.5-8 km. Flowing arcs, long straights
Technical — 16-20 corners, 3-4.5 km. Tight hairpins, constant direction changes
Street — 13-16 corners, 3.5-5 km. Mix of fast straights and chicanes
Balanced — 12-16 corners, 4-6 km. A bit of everything
In under a second: a smooth circuit with realistic proportions, a full speed profile, a natural racing line, kerbs, tire walls, sand traps, grandstands — all from geometry and physics. Every race on a new track. Every track with its own personality. Full devlog with technical details on our website: https://www.the-undercut.com/blog/devlog-001/