A ridiculous fork of @martinwoodward's 3dbreakout. A 3D pong game themed after the GitHub contribution graph, with webcam eyebrow-tracking controls π Made with lulz and GitHub Copilot CLI.
- Eyebrow-Tracked Paddles β Raise your eyebrows to move your paddle up; relax to drift down
- 2-Player Mode β Two faces detected = two human players, each controlling their own paddle
- AI Opponent β If only one face is detected, an AI controls the opposing paddle
- Contribution Square Ball β The ball is a green GitHub contribution square
- GitHub Aesthetic β Dark theme with the iconic green contribution palette
- Head-Coupled Parallax β 3D camera adjusts based on your head position
- Particle Effects β Scoring triggers green cube fragment explosions
- Keyboard Fallback β If no camera, use W/S (P1) and β/β (P2)
- Open
index.htmlin a modern browser (Chrome/Edge recommended) - Allow camera access when prompted
- Press SPACE to start
- Raise your eyebrows to move your paddle up
- Relax your eyebrows to let your paddle drift down
- First to 5 points wins!
| Input | Action |
|---|---|
| Eyebrows raised | Paddle moves up |
| Eyebrows neutral | Paddle drifts down |
W / S |
Player 1 paddle (keyboard fallback) |
β / β |
Player 2 paddle (keyboard fallback) |
SPACE / Tap |
Start / Restart |
- 2 Players β Two faces in the webcam, each person's eyebrows control their paddle
- 1 Player + AI β One face detected; you play against a computer opponent
- Keyboard β No camera available; W/S for P1, Arrow keys for P2
Serve the directory with any static file server:
# Python
python3 -m http.server 8000
# Node.js
npx serve .Then open http://localhost:8000
- Three.js β 3D rendering
- MediaPipe Face Landmarker β 478-point face mesh with eyebrow tracking
- Vanilla HTML/CSS/JS β No build step required
