Basketball Retro ![]()
What it is
Basketball Retro is a free, browser-based 3D arcade basketball game. You grab a ball, drag to aim, and flick up to shoot — sinking baskets to build your score before the clock runs out, with a relaxed freeplay mode and persisted high scores. It ships fully internationalized across 13 languages and runs without any install or account.
Inspiration
A letter to the golden era of arcade basketball the one-touch cabinets of the 80s and 90s. The concept was simple: bring the satisfying swish of a mini basketball hoop to the browser, wrapped in a retro arcade pixel-art UI, chunky sound effects, and snappy, feel-great while the court itself is real-time 3D.
How I built it
- Rendering — Three.js for the real-time 3D scene, camera rig, and lighting. No post-processing or custom shaders the retro look comes from lighting + a chunky arcade palette rather than GPU effects.
- Physics — @dimforge/rapier3d (Rust-based physics compiled to WASM) for the ball, rim, and backboard. The rim is modeled as kinematic collider segments with tuned restitution/friction so shots bounce naturally.
- 3D models — Blender-authored, optimized GLBs loaded via GLTFLoader, with procedural wireframe fallbacks if a model fails to load so the game stays playable even without assets.
- Game feel — Swipe-driven aiming where power and arc follow your finger,Sound is driven by an event-triggered Web Audio system.