Love All.
A small club. A long afternoon. Just one more game.
More than the next point.
The ball kids are ready. The umpire has a good view. Somewhere, someone is putting the kettle on.
Inside this little world +
A court with proper lines.
23.77 × 10.97 m, with 8.23 m singles sidelines and 6.40 m service boxes. The white net tape falls from 1.07 m at the posts to 0.914 m at its centre. ITF court rules ↗
The ball makes the decision.
Gravity, quadratic drag, spin lift, surface friction and net-cord collisions are integrated at 240 Hz. A numerical launch solver aims each shot, with small execution errors. Players predict the same physical flight and try to meet it with the strings.
Four styles. One court.
Two short sets to four games, no-ad at 40-all, a seven-point tiebreak at 3–3, then a deciding match tiebreak to ten. Tiebreaks require a two-point lead. The winner stays; the next challenger steps up.
Small pixels, real depth.
Three.js, an orthographic camera and an un-antialiased colour/depth target. Whole-pixel camera alignment, depth outlines, optional ordered dither and 64 colours matched in OKLab. Puddles reflect a second, mirrored scene.