Case study — studio build, playable from a link

A night-ops FPS in a browser tab

One rain-soaked street, sodium light against neon, a full cinematic post stack — and a firefight. No engine, no install, no download. Click and you're in.

Type

First-person shooter

Engine

Three.js / WebGL — no game engine

Install

None. It's a URL

Status

Live and playable

The brief:
make a browser feel like a film.

Not a tech demo with a gun —
a graded, art-directed night that happens to be playable.

Browser games have a reputation problem: they read as toys. The point of Operation Blackout was to see how far that ceiling actually is — whether a game served as static files from a CDN, with no engine, no bundler and no install, could hold the look of a AAA night mission. One street, rain on the asphalt, sodium streetlights fighting neon signage, enemies pushing a checkpoint in waves. Sprint, slide, aim down the optic, hold the line.

The constraint was the appeal. Everything a game engine normally supplies — the renderer's post stack, the state machine, the HUD, the enemy behaviour — had to be written directly against WebGL through Three.js. That keeps the entire build inspectable: fifteen small modules, each owning one system, loaded straight off an import map. There is no black box anywhere in it.

Art direction was treated as a discipline, not a vibe. The build went through six rounds of blind critique against real stills from a AAA night map — screenshots of both put side by side, graded, and the notes fed back into the lighting, the fog, the grade and the HUD. The honest outcome is part of the story: the AAA reference still wins on micro-detail and characters, but the browser build holds its own on lighting design and interface — which, for something that weighs a few megabytes and starts in seconds, is the argument.

The game is live, free, and linked from this page. It is also a template: the production brief behind it — art direction, structure, engineering notes — is available in the prompt shop, and the build itself is in the template gallery.

What was built

Every system hand-rolled —
because there is no engine underneath.

The street

One block, lit like a set

A single rain-soaked city street designed as a film frame: wet asphalt reflections, sodium light against neon signage, volumetric haze. The sky is procedural; image-based lighting fills the surfaces without ever leaking into the visible backdrop.

The gunfeel

Sprint, slide, optic, recoil

First-person movement with sprint and slide, aim-down-sights with a real optic, muzzle flash that lights the scene, and enemies that push the checkpoint in waves. The feel was tuned round after round because feel is the first thing players judge.

The grade

A cinematic post stack

Bloom, film grade, vignette and fog treated as part of the game state rather than decoration — the night look is authored in the same place the gameplay lives, which is what keeps screenshots looking like film stills.

Architecture

Fifteen modules, one contract

A written architecture contract defines a shared context, one event bus, and strict per-module file ownership — menus live in the HUD module, lighting in the lighting module. The discipline is what let the build grow through six critique rounds without tangling.

Game states

Menus that behave like a real game

A proper state machine: main menu, playing, paused, down. Losing pointer lock pauses the game instead of leaving you firing at a menu; fullscreen is one key; death releases the mouse so the redeploy button is simply clickable.

QA harness

Screenshots you can reproduce

A query flag parks the camera on fixed showcase poses with all randomness seeded, so a headless browser can capture pixel-stable frames. Every screenshot on the template page is reproducible from the build itself — QA as a feature, not a chore.

Why build a AAA-looking game
with no engine at all?

Zero friction to play

No store, no launcher, no 40 GB download. A link in a chat message is the whole distribution — which is what makes a playable build usable as marketing.

Everything is inspectable

Fifteen readable modules instead of an engine's black box. For a studio selling engineering, the game is the portfolio piece and the code review at the same time.

Critique as a build tool

Grading against real AAA stills — blind, in rounds — replaced taste arguments with evidence. The gap that remained is documented honestly, and so is the ground that closed.

It ships like a website

Static files on a CDN. Updates deploy in seconds, there is nothing to patch, and the same pipeline that ships this studio's websites ships the game.

From the build

Captured by the QA harness —
the same frames, every run.

Operation Blackout gameplay — pushing up the street under sodium light
In the fight — the checkpoint holds or it doesn't.
Operation Blackout — aiming down the optic in the rain
Down the optic. The grade carries the night.

QUESTIONS WORTH ASKING

Yes — it is live at operation-blackout-sigma.vercel.app, free, in any modern desktop browser. Keyboard and mouse are required; it is a shooter.

Because a playable moment out-engages any banner ever made, and a browser game removes the only real barrier — installation. A branded arcade piece that opens from a link works in a campaign, at an event booth, or as the reason people share your URL. This build is the proof it can also look serious.

Engines win on tooling and raw fidelity; the browser wins on distribution and weight. An engine export to the web ships tens of megabytes of runtime before your first texture. Writing directly against Three.js keeps this build at a fraction of that, starting in seconds — and every system in it is code you can read.

A way to make the game hold still. A flag in the URL parks the camera on fixed poses and seeds every random number, so an automated browser can open the game and capture the exact same frame every time. That is how the lighting was compared across critique rounds — and how you know the screenshots aren't cherry-picked.

Yes — the exact production prompt behind the build, with the art direction, structure and engineering notes, is a one-time unlock in the prompt shop. The template page has the full breakdown of what's inside.

Want a playable moment
attached to your brand?

Games, interactive pieces, product demos — if it can run from a link, it can run in your campaign. Tell me what you're imagining.