# NEON TUBE

A tiny arcade tunnel runner (js13k-style). Everything you see, including the HUD text, is drawn by one
raymarched WebGL2 fragment shader. It's a single `index.html` with no libraries, no assets and no build step.

Ride the inside of a neon tube, dodge the glowing blocks and grab the gold gems. Speed keeps climbing until you crash.

## Controls

| Action | Keyboard | Touch / mouse |
| --- | --- | --- |
| Move left | `←` / `A` | hold left half of the screen |
| Move right | `→` / `D` | hold right half of the screen |
| Start (leave demo) | any key | tap |
| Restart after game over | any key (e.g. `Space`) | tap |

## Scoring

- Distance travelled: 1 point per 5 units
- Gem: +50
- Best score is saved in `localStorage`

## Idle demo

When the page loads, an AI pilot plays on its own. When it crashes, the run restarts by itself. Press any
key or tap to take over. If nobody restarts after a game over, the page goes back to the demo after 12 s.

## Notes

- The file size is shown in the bottom-right corner (it fetches its own file, about 8.7 KB, against the 13 KB limit).
- Resolution adapts to frame rate, so it stays playable on software WebGL (SwiftShader).
- Run it by opening `index.html` directly or serving the folder, e.g. `python3 -m http.server`.
