A developer blog post detailing the technical implementation of osu!web, a browser-based renderer for the rhythm game osu!. Covers how beatmap archives are decompressed and parsed, how Web Audio API is used to decode and play MP3 files, and how PIXI.js is used on top of WebGL to render hit circles and sliders. Key technical challenges include a sprite-caching pattern for performance (only loading 10 seconds of upcoming hit objects), computing Bezier curve paths for slider rendering, and animating approach circles and follow balls using per-frame timestamp math. The post also notes limitations like Web Audio's poor low-latency support and plans for future features like spinners, replays, and shader-based sliders.
Table of contents
osu!web and the futureTechnical DetailsEnter stage: Web AudioEnter stage: PIXICurvesConclusionsSort: