With increasing regularity over the past few months, someone turns up in our Discord, or emails us, and says something along these lines:
"I just saw your latest video and I had no idea Phaser could do 3D — did I miss an update?
"Where are the 3D functions in the docs? I can't find them."
And I get why they're asking. But the answer is: there aren't any. Phaser 4 is a 2D engine. It has always been a 2D engine, and it's going to stay a 2D engine. You didn't miss anything.
This one is squarely our fault, too. We've been posting a lot of content lately showing off new features: voxel worlds you can mine and build, terrain with grass blowing across it, racing games, water with actual waves. And it all went out under the Phaser banner, because it is Phaser, in the sense that we made it. But it isn't Phaser 4. So people have seen the videos, seen the word "Phaser" on them, and quite reasonably assumed that whatever produced that must be the same thing they'd get by running npm install phaser.
It isn't. Two different engines got conflated into one, which is entirely understandable when we've never sat down and explained the difference.
Rather than keep explaining it one Discord message at a time, here's what's actually going on.
The Short Version: Phaser 4 vs Phaser AE
- Phaser 4 is our open source, battle-tested, 2D WebGL game framework. You write JavaScript or TypeScript with it, by hand (or with your AI coding assistant of choice). It is for developers.
- Phaser AE is a completely separate engine that we built from scratch, specifically for LLMs to use. It is what powers the Phaser Game Agent. It does 2D and 3D, it's WebGPU-first, and it is not open source.
- The Game Agent does not generate Phaser code. Not a line of it. Different engine, different API, different everything.
They share a brand and a team, and that's about it. They are two divergent paths serving two entirely different sets of creators.
If that's all you needed, thanks for reading! Go make something great. And when you do, please tell us about it. We genuinely love seeing what you all build, and we help promote your games constantly and have been doing so for years. Whichever of the two engines you used, show us what you make, please.
If you'd like to know why we built another engine, keep going...
The Uncomfortable Statistic Behind Phaser AE
Here's a simple but perhaps non-obvious fact about why we built this at all.
The overwhelming majority of people who come to the Phaser website - 78% of them - have no coding experience. And this is the crucial part: most of them told us they have no desire to learn, either. They were always after a game-making tool, not an open source library.
That figure comes from the most recent visitor poll we ran, and it wasn't a small sample. Over 100,000 unique people visit the Phaser site every single month, and thanks to being recommended by ChatGPT and friends — we're currently seeing unprecedented growth in that traffic. So it's a lot of people, and there are more of them arriving every day.
It's also not a judgement of anybody. Wanting to make a game without wanting to become a programmer is an entirely reasonable position to hold. I love films, but I have no interest in learning to operate a camera.
Sit with that 78% for a second, though, because it reframes everything. If you're in our Discord because you coded a JavaScript game using Phaser and your own two hands, then congratulations: you are officially in the minority. A wonderful, dedicated, and much appreciated minority - but the minority nonetheless.
For over a decade we've served that beautiful, glorious minority extremely well and mostly ignored everyone else, because honestly, what were we going to tell them? "Learn to code first"? That's not an answer; that's a door closing. The Game Agent is for them. And boy, have they been using it.
There's a second audience too, and it's one I'm equally happy about: experienced developers who want to prototype fast. Throw a concept at the face of the Game Agent, see what comes out, play with it, tweak it, and then take that idea and push it much further somewhere else. That's a completely valid use of our Game Agent, and a lot of very capable people are doing exactly that.
What Phaser 4 Is: Open Source 2D WebGL for Developers
Phaser 4 is the latest iteration of the open source engine you already know, and it's in the best shape it has ever been in.
It's a 2D engine built on WebGL 1, and that combination is deliberate. WebGL 1 runs everywhere. Every phone, every tablet, every locked-down school Chromebook, every ancient Android device in a market you've never thought about but that your publisher definitely has. Phaser games have been played literally billions of times. When you ship a Phaser game you are shipping on top of something that has been hammered on, in production, at enormous scale, for years. I have precisely zero qualms about its stability or its professionalism. It's why it gets used for things like Google Doodles.
The API is the other half of it. The Phaser API has been carefully and lovingly crafted for developers, over many, many years. It's designed to be read, learned, argued about, extended, and lived in. It's designed for humans. That has always been the point.
Plenty of people now pair Phaser 4 with Claude Code or Copilot or whatever else, and that works nicely. There's a mountain of Phaser code and documentation out there that models have learned from. But fundamentally, to use Phaser 4 you have to be a developer — or at the very least be willing to think and plan like one. And that is absolutely fine. That's who it's for.
What Phaser AE Is: A Ground-Up Engine Built for LLMs
Phaser AE is a brand new engine. Not a fork of Phaser, not a wrapper around Phaser, not Phaser with some extra bits bolted on. A ground-up rewrite with an entirely different set of design goals, because it has an entirely different consumer: a language model.
That one decision changes everything downstream.
And pair that with the choice I made from the start: When the Game Agent builds your game, it cannot see the engine code. Not one single line of it. The source is completely invisible. That was entirely on purpose, because we'd experienced the alternative plenty of times ourselves: give an agent access to engine source code and it will happily run off down a rabbit hole, filling its context boots with irrelevant data, when all you really wanted was your game updated ("No! I never asked you to patch the renderer!")
What it gets instead are tools that let it state which features it needs. In return, it's given type definitions describing the shape of the data each call wants. It's like components or modules, without the 'import' bit. Think Unix-philosophy functions.
Because of this approach, there isn't one fixed engine. Its shape gets built per game, out of what that particular game actually needs, rather than out of the entire feature set of the API. Two games made with Phaser AE can be running two genuinely different engines. That's not a side effect; it was the whole idea: to keep the agent's attention on the game in front of it. There is a set of 'core' components at the heart, of course: Input manager, file loader, things you need no matter what, but all the juicy fun stuff? That gets bolted on as the agent requests it.
As we weren't building this engine on top of Phaser, we got to operate on an entirely blank canvas. There was nobody to apologise to because we'd gone and changed the API on them. Agents don't care if you burn semver on every deploy. So we put in every engine feature we've ever wanted and had never really been able to justify. Turns out, when you've been building a game engine for 13 years, and suddenly have no limits on how far you can push the API, you can have a lot of fun!
As a result, it's WebGPU-first, with a full WebGL 2 fallback underneath so games still run where WebGPU isn't available. The first version of Phaser AE was actually Canvas only. We used the pure canvas version (affectionally known as "Raster") to prove out the concept. And it worked. Big time. So then we went all in.
It does 3D, natively, and properly. Meshes, GLB and OBJ models with skinned animation, dynamic lights, shadows, SSAO, a procedural sky with day and night on a single dial, water with waves and shore foam and caustics, terrain with grass on it and snow you can carve tracks into, voxel worlds you can mine and build in, GPU particle systems, and optional Box3D physics if you want things to tumble about believably.
I'm just as pleased with the 2D side: hundreds of thousands of sprites, batched down into a couple of draw calls a frame. Dynamic runtime texture atlas creation. Tilemaps with animated tiles and slope collision. Proper SDF rendering for 2D geometry, so circles and rings stay crisp no matter how big you make them. Dynamic 2D lighting with hard shadows thrown by actual scenery, plus fog of war and line-of-sight. MSDF text that scales to any size with outlines and glows and gradients. Box2D for full-body physics. Glowing vector line art. And a pixel art mode poached from Phaser 4 that keeps your pixels fat and crisp while movement and rotation stay perfectly smooth.
And that's just a fraction of it. One day I'll write about the really exciting bit, but this post is about the engine.
The API itself, though, is shaped for a machine and not for you. There's no lovingly curated class hierarchy to learn and subclass, because nobody's going to learn it. The documentation isn't API reference material either — it's a set of task-shaped maps that answer "I want to do X, so what do I call, and why this way", written to be read at generation time by a model that has never seen this engine before and never will again.
Which is, I'll admit, a genuinely odd way to build a game engine. It honestly felt wrong at every step of the way, until it started working, and then it just felt right. It turns out to work extremely well, so long as your only consumer is an LLM.
The questions we keep getting
Does the Game Agent generate Phaser source code?
No. It doesn't. The games it makes are built against Phaser AE, which is a completely different API to anything in Phaser 4. If you open up the code expecting this.add.sprite(),
you're going to have a confusing afternoon. It's not unreadable, any skilled dev could easily follow it through, but there's no public API to validate it against, either.
Is Phaser AE open source?
No, it isn't. Phaser 4 is, and will remain so - that's not changing, ever. But AE is a different thing with a different model. Will we open source it eventually? Probably, but it isn't a priority. Having maintained a massive open-source project for so long, I'm painfully aware of all the baggage that comes from doing so, and the toll it takes, both mental and on a resource level.
Are the AE features coming to Phaser 4? Can I have the 3D?
Almost certainly not. They were never designed with that in mind. It would be like gluing a Sticklebrick to a Lego set - you might be able to make it technically work, but it was never meant to be there. The two engines make opposite assumptions at nearly every level. Porting one into the other wouldn't give you the best of both; it would give you a messy compromise.
And I know what you're thinking, "Can't you just get AI to port over the good bits?" - again, technically, yes, of course. But it would come at a hefty cost. The Phaser 4 API is stable; we have no intention of rocking that boat and tipping everyone overboard, us included.
Who owns the games I make with the agent?
You do. They're yours. If you want to open source your game code, share the source, or take it and run, that's entirely your call. The engine code isn't open-source and is not covered under an MIT license, but your game code can be if you wish.
Side by side
| Phaser 4 | Phaser AE | |
|---|---|---|
| Who writes the code | You | The Game Agent |
| Intended user | Developers | Everyone (devs most welcome) |
| Dimensions | 2D | 2D and 3D |
| Renderer | WebGL 1 | WebGPU, with a WebGL 2 fallback |
| Open source | Yes | No |
| API designed for | Humans | LLMs |
| Track record | Billions of plays, hundreds of thousands of games | New, and moving fast |
Where this goes
It's worth saying out loud that, at the time I'm writing this, the Game Agent has been public for one month. And in that time we've already updated it massively. New capabilities, new engine features, whole new categories of game it can build - and people have made over 500 games with it already. Watching that happen has been genuinely exciting, and it's shaping what we build next far more than any roadmap we wrote beforehand.
Will the Phaser lines blur over time? Probably, yes. We actually debated internally for a while about calling it Phaser 5! Because for us it was a natural evolution of the framework. In the end we felt that put too much of a hard-stop on the v4 lineage, so went for Phaser AE instead. Oh, and the AE stands for 'Agentic Engine' (or 'Awesome Engine' if you prefer, I'm not picky).
If we build it right, Phaser AE will evolve in a direction more akin to Super Mario Maker than to something like Unity. And that's just fine - it's the correct path for that tool to be on. It isn't trying to become a professional development environment with an inspector and a node graph. It's trying to let someone who has an idea for a game end the evening with a game.
Meanwhile, Phaser 4 carries on being Phaser 4: open, documented, dependable, and yours.
I've got a lot of personal thoughts on the future of software and the wholesale changes happening to our profession right now, and I see the reactions from all sides. The AI-bro hype culture is as egregious to me as the AI doomers with their heads in the sand. It's a wild world at the moment, that's for sure. And it's changing every day.
But, as with LLMs I suppose, context matters. And this article is the context behind our Game Agent.
Two engines. Two audiences. One brand. No 3D in Phaser 4, sorry.
Right, where do I actually start?
Pick the branch that sounds like you.
You're a professional developer
You need real, editable Phaser source code - a client game, a playable ad, something with a deadline and a spec attached. Then use the proper tools for that job: the Phaser Editor alongside the open source Phaser libraries. Visual scene design, real code out the other end, and everything you build is yours to take anywhere. That is a completely valid and very well-trodden path, and it isn't going anywhere. And it pairs well with local AI tools like Cursor or Claude Code.
You want to prompt a game into existence
Then use the Game Agent, and there are two ways to do it.
If you already subscribe to an AI coding tool — Claude Code, Codex, Antigravity, Cursor, or anything else that speaks MCP - use it. Connect it to our MCP server and drive the Game Agent straight from the tool you're already in. This is genuinely the route we'd recommend: it's significantly cheaper for you, you get to pick the model that is used, and you have more control over the build process.
If you don't have one of those, that's exactly what our hosted Game Agent is for. Buy a handful of credits, throw them at it, and go and explore. Prompt something daft. See what comes back. Tweak it, break it, prompt it again. That's the whole point of the thing.
Either way, you'll be using Phaser AE under the hood. An engine built from the ground up for precisely this job. Go and see what you can get out of it.




