AAA and indies now use the same engines for the most part
In game dev however, there's a lot fewer reliable open source tools around. You have a game engine, a small number of great plugins, and a lot of dodgy stuff. You have to/get to make a lot of things yourself.
The scope and complexity of indie games, even allowing for this, is still increasing staggeringly.
...and don't get me started on unreal engine physics and pathfinding issues, or rendering bugs in unity
Indie games didn't get THIS good because of Unity and Godot, if you think that you're deluding yourself.
I've done amateur and professional game-dev and Unity and Godot existing don't make making an FPS any easier than before, engines have existed for a long time.
A solo dev can create (from scratch) an FPS engine, assets, music, levels from scratch over a weekend now.
This is only possible with AI.
And when they do, this is what we get:
There's been a lot of good indie games recently (Queen's Domain[0] being a recent example that's taken off) but I don't know of any which are using an AI-coded engine or use AI-generated assets extensively.
[0] https://store.steampowered.com/app/1799840/Queens_Domain/
Just recently, someone used AI code to fix a Unity engine bug and hand-wrote the rest, and it still caused a huge uproar. It's a world where honestly disclosing that you used AI code is not a good idea.
[0] https://www.unrealengine.com/developer-interviews/meccha-cha...
What does "from scratch" even mean when using an LLM trained on existing assets, music, art and code? Why even bother with that parenthetical? No one believes an LLM creates ex nihilo like God.
Show me the AI generated game that's superior to Balatro, or Hades, Or Undertale/Deltarune? Cult of the Lamb? Expedition 33? Factorio? Kerbal Space Program? Ultrakill?
It not being easy means it requires actual effort and skill, and effort and skill are where the quality comes from. No one is ever going to care about whatever vibe-coded slopfest you had Claude shit out over a weekend. Being able to make low quality low effort shit quickly is not better.
1. Hardware advancements mean that you can get the same results with less optimized code (this is what allowed 3rd party engines with GC scripting languages to become popular)
2. The proliferation of learning resources and open source code.
3. The budgets and size of indie studios as well as total time spent on the games. Seriously look at some of the games these days that get labeled indie.
Warcraft 1 (my first RTS) had just 4 programmers. And only one of them was on the project the whole time. And the entire project was only 14 months.
Their workflow was:
1) Arrive at work. Get coffee. Fetch latest code from Visual Source Safe.
2) Turn on Xbox. Hit F5 to build, deploy and start debugging on target.
3) Edit and Continue C++ in debugger IDE all day on target without ever bothering to stop the game. (Yes, this took some coding discipline to maintain.)
4) Turn off Xbox and go home.
Between the Visual Studio debugger and the Whole Tomato coding assistance, it was easy to understand the code and the runtime behavior. For anything GPU-related, Microsoft Pix for Xbox gave you a scrubbable timeline of every action, every pixel, every register change in the GPU while drawing a frame.
The hardware capabilities, available libraries, and artist tools have increased tremendously since then. But, the coding experience has not. 20 years later, I'm outside of gaming and I find most people using re-run-and-printf debugging for professional development. Even locally. I don't know how anyone gets anything done.
The only significant improvements I've seen in 20 years (besides the occasional memory tracker or profiler tool) has been AI agents and reversible debuggers. Otherwise, it's all been downhill since 2004.
Gamedev programming probably hit a low point for me when XBox One and WiiU came around. Those were some truly awful experiences.
For WiiU, Nintendo used the Green Hills compiler. Their entire toolchain was simply clunky and unstable. You had to use this MULTI debugger which often didn’t work. My favorite line from their dev docs was “c++ not fully supported”. Well, that’s an issue since we used that extensively. It wasn’t even clear what actually wasn’t supported.
* before and after rails;
* before and after js UI frameworks;
* before and after scaled machine learning;
* now before and after LLMs;
And saying we haven't advanced much is wild.
In the last 3 years, there have been a lot more indie games of far higher quality than we used to get. I'm thinking of the RTS space right now. The Scouring for example. We went from having nobody but Blizzard able to make something that complex to several games with outstanding performance and complexity, sometimes with their own custom game engines.
I don't know how much of a role AI is playing in those games, but I think the performance and complexity of indie games is shooting up and we are seeing very, very small teams make things that large teams struggled with in the past. Honestly, I think indie studios are outperforming AAA in most ways besides spend and length and art budget