O3DE at Heathen #
O3DE (Open 3D Engine) is our internal engine of choice and one of our two strategic FOSS bets (alongside Godot) for where our tooling is heading. See our engine selection guide for how O3DE compares to the other engines we support.
Why O3DE #
We have a deep-dive Game Engine Selection Guide that explores the broader market in detail. While we maintain active expertise in Unity, Unreal, and Godot, O3DE has become our internal engine of choice.
Our requirements as tools developers are specific: we need an engine that’s flexible, stable, and powerful, but above all, one that won’t break our custom toolsets with every minor version update. While we appreciate the agility of engines like Godot, their current rate of breaking changes in the API made them a non-starter for our long-term stability needs.
Moving beyond “the way” #
Engines like Flax, Unity, and Unreal are incredibly capable and feature highly polished user experiences. However, they’re also deeply opinionated when it comes to rendering and tooling — that ultimately proved to be a bottleneck for our workflow.
Unreal Engine was our previous standard, and it’s undeniable in its power. But it’s designed around a very specific “way”: much of its modern architecture is built to support temporal accumulation effects, smoothing out photo-realistic virtual geometry and real-time lighting. Impressive, but if your project demands a rendering style that steps outside that pipeline, you quickly find yourself fighting the engine’s core assumptions.
For a studio that prioritises architectural freedom, we needed an engine that acts as a partner, not a gatekeeper.
The O3DE solution #
O3DE feels more like a highly polished development framework than a traditional game engine. While some might see that as a hurdle, for us it’s a significant perk.
At its core, O3DE is a modular platform designed to load “Gems.” Think of Gems as independent assemblies or plug-ins that encompass every major system — the renderer, physics, UI, and more are all just modular components. This lets us treat O3DE as our own custom engine: we use the out-of-the-box or community Gems where they fit, fork and tweak them where they don’t (made possible by its FOSS nature), and build our own from scratch to fill any gaps.
Critical factors in our transition
- Logic & text-based scripting. While we respect the power of Unreal, the industry’s push toward forcing logic into Blueprints has real drawbacks — saved as binary objects, they’re notorious for complicating source control and are often slower to maintain than text. O3DE offers Script Canvas for those who prefer node graphs, but it’s ultimately generating Lua, a lightweight, text-based scripting language. O3DE also supports Python, and we’re closely following community-led efforts to bring C# scripting into the ecosystem.
- Asset transparency. O3DE assets are text-based. For an engineering-heavy team, human-readable files make debugging, version control, and automated tooling far more efficient than opaque binary blobs.
- A foundation for the future. We aren’t just using O3DE, we’re actively contributing to its viability. We’re building “Foundation Gems” (FOSS) to lower the barrier to entry for smaller, less engineering-heavy teams — expanding our professional tools offering with both free open-source Gems and specialised Pro options on top.
Available Now #
What’s shipping for O3DE today, Foundation (free, open-source) and Toolkit (paid, built on the Foundation) noted separately where both exist:
- Steamworks SDK — Foundation & Toolkit
- Ogham Storyteller — Foundation & Toolkit
- Gameplay Tags — Foundation
- Lexicon Localisation — Foundation
Questions along the way land best in our Discord.