Case study
An original first-person 3D engine running inside the Modern Warfare 2 lobby menu on Xbox 360 — no 3D engine, no external app. Every wall and enemy is drawn from a single flat rectangle. It’s a playable demo, built to show the kind of mini-games MW2’s pre-game lobby can host.
“A raycast 3D scene rendered entirely with 2D draw calls, running live inside MW2 on real hardware.”
The same engine, ported to JavaScript — same map, same constants, same colors, everything still drawn from flat rectangles.
The idea. I wanted to see how far I could push the game’s UI layer. The game only lets my code draw simple 2D shapes on the screen — so I set out to build a real-time 3D game out of nothing but flat rectangles.
I hook the game’s per-frame 2D render step, so my code runs every frame and draws on top of the menu — a full game loop, in-process, on real hardware.
The only tool I have is a single flat, 4-corner colored quad (one 2D draw call). Every wall, enemy, weapon, and letter on screen is built from that one rectangle. It’s the “pixel” of the whole engine.
This is the classic technique behind Wolfenstein 3D and DOOM. For each vertical column of the screen, I cast a ray across a 2D grid map, measure how far away the wall is, and draw one tall thin rectangle whose height is 1 ÷ distance. About 160 columns side-by-side = a convincing first-person 3D view. It’s pure math — no GPU 3D, no engine.
Enemies are billboards (flat images that always face the camera). I project each one into the 3D view and clip it against a depth value I record for every screen column while drawing the walls — so enemies correctly disappear behind corners and walls. (This is a hand-rolled depth buffer.)
From there it’s real game code: infinite rounds, enemy AI, weapons with reload, ammo, and recoil, a melee, sprint, health, a points economy, a HUD, and a game-over/restart loop — all still drawn from that one rectangle primitive. It’s a demo rather than a finished game — the point is proving the engine can carry one.
Why it’s cool. It’s a software 3D renderer and a playable demo, running as a mod inside a 15-year-old console game’s menu. It’s the kind of thing people assume needs a real engine — and it’s built out of a single colored rectangle. More than anything it’s a demonstration: whole custom mini-games can live inside MW2’s pre-game lobby.
I didn’t reverse-engineer this by hand, and I don’t want to pretend I did. My workflow orchestrates Claude alongside IDA for working through the game’s code, and XECLI for reading and writing live memory on the console. I direct the research and the design, and I test everything on real hardware — but that AI-assisted stack is what made a project like this possible, and demonstrating the workflow is part of the point.
AI-orchestrated reverse engineering (Claude + IDA + XECLI) · Computer graphics from first principles (raycasting, depth buffering, billboard/sprite projection) · Real-time software rendering · Systems programming (C++, per-frame render hooks) · Working on a constrained PowerPC / Xbox 360 target.
Co-op play. It may be possible if another person is also running the mod and I hook into the Xbox’s networking to connect the two consoles — two players inside the same raycast world. No promises yet; it’s the next experiment.