The OSM pipeline pointed at actual mountains. Both levels ride the real
terrarium DEM (Coot-tha's range tops at 287 m, Gravatt's at 196 --
matching the survey numbers) with the real roads draped and carved over
it: Sir Samuel Griffith Drive winding up one side of town, Mount
Gravatt Outlook Drive zigzagging up the other. Race mode is 3 laps of
the mountain; the drag finder even discovered a 1080 m strip through
Mount Gravatt's suburbs (Logan Road, of course it is).
Pipeline upgrades earned along the way, all reusable:
- trace: RacePath mode now STITCHES every OSM way sharing the name into
one chain by shared endpoints (SSG Drive is 19 segments; tracing only
the longest produced a fraction of the route) and samples densely --
16 points cut hairpins cross-country and gridded race starts in a
paddock.
- 9th builder arg selects the raw-terrain texture. Bushland levels pass
"grass" (tiled at 3 m -- 18 m tiling reads as macro-photography lawn
blades under the car) which also enables forest fill: ~2600 extra
gums, 65% biased to within ~150 m of roads, where the driver's eyes
actually are.
- amenity=parking polygons are now PAVED (draped asphalt) as well as
stocked with parked shitboxes -- a summit lookout carpark is a
burnout pad, not a dirt patch. Both summits come ready.
- man_made mast/tower ways become tapered lattice towers with a cage
and whip antenna, built from beams into the steel bucket. Mount
Gravatt's telecom tower stands over its carpark.
- Levels can carry their own sky: levels/<id>/sky_<time>.jpg overrides
the global panorama for any time of day, including day (previously
always procedural). Both mountains ship FLUX skies with the Brisbane
skyline on the horizon; Gravatt also has a sunset one, because John's
reference photo demanded it.
Suite green at 11 levels. Next burnout spot: the Gateway Bridge, when
the details arrive.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Street lamps, bollards and bins are no longer baked scenery. The builder emits
SL_/BO_/WB_ markers off the OSM nodes and game.gd spawns them as RigidBodies
with a low centre of mass, so clipping a lamp at 100 topples it instead of
driving through a painted pole. ~206 physics bodies per level (58 parked cars,
60 lamps, 88 bollards/bins), all asleep until hit. Verified by ramming one:
23.6 deg tilt, launched at 18 m/s.
Fixes a self-inflicted trap from the last commit: level_*.jpg are Godot's
extraction of the GLB's embedded textures, NOT Blender output. build_all
cleared them to avoid orphans but left level.glb.import, so Godot's cache
decided nothing had changed and never re-extracted -- queen_st_mall shipped
with 0 of its 31 textures, loading fine but rendering untextured. The .import
now goes with them.
Also confirmed the Wheel of Brisbane pivot really does turn (0.086 rad over
120 frames, 0.000 m centre drift) -- it was previously untested.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Builder now uses the furniture OSM already carries (footways, lamps, benches,
bins, bollards, bus stops, crossings): raised chamfered footpaths, shopfront
bands, awnings in three fabrics, parapets, layered fig/palm trees, zebra bars,
dashed centre lines, Queen St Mall winged canopies. ACES tonemap + SSAO + fog
in game.gd. flux_texture.sh gains size/luma clamping (FLUX renders "pale" as
blown-out white); gen_textures.sh + check_textures.py manage the set. Woolies
carpark rebuilt textured, parking the real fleet. Fixes: fractional OSM layer
tag crash, zero-length-normal UV projection, blood-red mall pavers.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
9 junction events across 6 levels, auto-generated from real OSM intersections
(tools/osm_junction.py): each crossing street's ways become lane-offset convoy
streams, deterministic speeds/intervals/models -- learnable puzzles, not dice.
Menu lists CRASH JCT entries; crash -> 9s settle with camera-relative
aftertouch on the wreck and a one-shot crashbreaker shockwave (blast() on
traffic, radial impulse on debris, orange boom). Damage tally vs
bronze/silver/gold targets. Fixed zero-normal UV projection that striped
roads. Smoke test drives a full junction run to tally (k, gold).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>