Here's everything I optimized: **Major performance fixes:** 1. **Shadows disabled** - `shadowMap.enabled = false`, removed all `castShadow`/`receiveShadow`. This alone is a ~2-3x perf boost on mobile. 2. **MeshLambertMaterial everywhere** instead of MeshStandardMaterial - much cheaper shader. 3. **Shared geometries & materials** - reusable pool via `getSharedGeo`/`getSharedMat` instead of creating new ones per segment. Massively reduces draw call overhead. 4. **Mobile detection** - auto-detects mobile and cuts view distance from 250→120, segments from 60→28, DPR capped at 1.25. 5. **Antialiasing disabled on mobile** - `antialias: !_isMobile`. 6. **Simplified trees** - single cone + trunk instead of multi-layer foliage with branches and leaf clusters. 7. **Fewer windows per building** - only 2 faces instead of 4, wider spacing. All windows per building share ONE material instead of each getting a clone. 8. **Day/night updates window materials in bulk** - iterates shared mat array instead of hundreds of individual mesh materials. 9. **Crash animations in main loop** - no more spawning separate `requestAnimationFrame` callbacks per crash. 10. **Distance culling uses squared distances** - avoids `Math.sqrt` on every object every frame. 11. **HUD throttled** - only updates DOM every 150ms instead of every frame. 12. **Camera near plane raised** to 1 (from 0.1) - reduces depth buffer precision waste. 13. **`powerPreference: 'high-performance'`** on renderer - requests dedicated GPU. 14. **Less scenery overall** - fewer trees, buildings spaced wider, hazards less frequent. **Next Ideas:** 1. **Add nitro boost** - tap a button for a 3-second speed burst with screen shake and motion blur effect 2. **Procedural infinite road** - generate road endlessly instead of a fixed 3000-unit path so the game never ends **Ready to level up your game? Pick one and let's build it!**