CSSQuake
Rendering & Implementation
- Game uses CSS and HTML for rendering only; all core game logic is written in JavaScript/TypeScript.
- DOM elements and CSS 3D transforms replace traditional canvas/WebGL rendering.
- Build step extracts data from QuakeC/progs.dat into JSON (states, models, attacks, sounds) consumed by the TypeScript runtime for “Quake‑ish” gameplay.
- Some commenters note CSS audio features (aural style sheets), but sound in this demo is controlled via an in‑game option / keyboard shortcut, not pure CSS.
Relation to Other Projects & Lineage
- Multiple people compare this to a similar “CSS Doom” project; thread clarifies they are separate projects.
- Both are seen as part of a longer line of experimental CSS3D engines and FPS demos that predate them.
Gameplay, Controls & UX Issues
- Several control quirks reported: rubber‑banding movement, getting stuck on corners and slopes, clipping through objects, and difficulty exiting the game.
- Menu can disappear when clicking in the window; workaround is using Tab to show menu, Esc to quit, or closing the tab.
- Some buttons originally required shooting instead of touching; this behavior was later adjusted.
- Dark mode extensions can make parts of the map nearly invisible.
Performance & Browser Differences
- Experiences vary widely: some see smooth 60 FPS even on modest hardware, others report severe jank or crashes.
- Safari/WebKit is frequently reported as stuttery and glitchy; Chrome and Firefox on various platforms are usually smoother.
- Many contrast the choppy performance with how well original Quake ran on much weaker 1990s hardware, highlighting the cost of using CSS as a rendering pipeline.
Reactions to CSS as a Medium
- Strong admiration for the technical feat and “because we can” spirit.
- Some see it as an impressive but inherently inefficient misuse of a declarative styling language.
- Others argue it’s simply leveraging existing 3D transform capabilities and a fun challenge, not a serious engine choice.
Nostalgia & Cultural Notes
- Numerous nostalgic reactions from people who played Quake decades ago and still remember levels and movement by muscle memory.
- Thread also includes light joking about CSS jokes (float, z‑index, centering divs) and “has science gone too far?”‑style comments.