M1/M2: engine + tyre audio, night-city ambience
CI / quality (push) Successful in 56s

SoundController (client):
- Looping engine sound on the car body: pitch 0.7->1.9 tracks speed
  (curved so low speed feels torquey), volume swells with throttle
- Tyre squeal loop faded by lateral slip (velocity along body RightVector)
  and hard braking from speed; always playing at 0 volume to avoid pops
- 3D sounds with rolloff so other players hear cars pass
- Asset IDs from safe sources (Roblox Resources engine loop,
  ProSoundEffects squeal); swap in SOUNDS table after audition

Ambience (server):
- Atmosphere (purple-grey haze, glare) so neon reads in the air
- BloomEffect for neon pop + subtle cool ColorCorrection
- Slow ClockTime ping-pong 22:00->03:00 over 10 min: always night,
  but the sky breathes
This commit is contained in:
2026-07-22 01:52:30 -04:00
parent e94bb8fcda
commit 2ae3bf8bdb
5 changed files with 244 additions and 2 deletions
+8 -2
View File
@@ -25,7 +25,11 @@ to owner + son. Cars persist between sessions. CI green on a self-hosted runner.
- [x] **Chase camera**: scriptable follow cam while seated — damped chase with
look-ahead, flat horizon (ignores car pitch/roll), speed-based FOV kick.
`src/client/CameraController.luau`. Tune constants after playtest.
- [ ] Sound: engine loop, tire screech, boost.
- [x] Sound: engine loop (pitch tracks speed, volume swells with throttle) +
tyre squeal on lateral slip / hard braking. `src/client/SoundController.luau`.
Asset IDs are placeholders from safe sources (Roblox Resources engine loop,
ProSoundEffects squeal) — audition in Studio and swap in the SOUNDS table
if they don't fit. Boost sound deferred until boost exists.
**Exit test:** the RX-7 is genuinely fun to just drive around. Ship nothing else
until this is true.
@@ -34,7 +38,9 @@ until this is true.
- [x] Better map v2: 3200-stud expressway with gantry arches, a neon-lit
tunnel, jump ramps (right lane; left stays flat), end wall, and a
procedural neon skyline flanking the route.
- [ ] Day/night, weather mood.
- [x] Day/night, weather mood: `src/server/Ambience.luau` — Atmosphere haze
catching the neon, bloom + cool color-correction post effects, and a slow
22:00→03:00 clock drift (10-min ping-pong) so the night sky breathes.
## M3 — Racing (the first "game" layer)
- [ ] Checkpoints + timing (a new RaceManager — the old one was removed in M0).