finds.dev

// 8 picks · reviewed October 2026

The best open source game engines in 2026

Picking a game engine really means picking a trade-off: how much editor tooling you want, which platforms you need to hit, and how much you're willing to write by hand versus assemble from a scene graph. Godot and Defold hand you a full editor and ship binaries to most platforms out of the box. LibGDX, Phaser, Babylon.js and Bevy assume you're comfortable in code and want a framework, not an IDE. Cocos sits in between, tied to its own editor. GDevelop removes code from the equation entirely.

AAA 3D is the one gap none of these close — that's still Unity and Unreal's territory. Where they split well is 2D, browser games, mobile, and mid-size 3D projects, each built around a different idea of who's doing the building: programmers, designers, or people who'd rather not code at all.

  1. 01godot
  2. 02libgdx
  3. 03Babylon.js
  4. 04cocos-engine
  5. 05phaser
  6. 06defold
  7. 07GDevelop
  8. 08bevy

★ 118,782C++MITupdated Oct 2026

best for developers who want full editor tooling without Unity's licensing

Godot's scene system — everything as a node tree, composition built in — clicks faster than Unity's GameObject/Component split once you've built a few scenes. GDExtension lets you write native C++ or Rust against a stable ABI without recompiling the engine itself, which is the kind of architectural detail that separates a mature project from a weekend one. MIT license, no royalties, no per-seat fees: you keep the whole pipeline.

3D is the part still catching up. Global illumination through LightmapGI works, but the bake times and quality ceiling push anything serious toward Unity or Unreal instead. C# support ships as a separate editor build with flaky hot reload, so most people end up writing GDScript for the fast parts and reaching for GDExtension for the slow ones. Console releases go through certified third-party contractors — workable, but not the one-click export the rest of the engine promises.

★ 25,463JavaApache-2.0updated Oct 2026

best for Java developers who want direct control over rendering without an editor

LibGDX hands you a backend abstraction — LWJGL3, Android, iOS, headless, GWT — proven across hundreds of shipped games rather than a handful of showcase demos. Apache 2.0 with no runtime fees is a real difference from Unity, and the third-party ecosystem (Ashley for ECS, Tiled support, particle editors) fills in what the core library leaves out.

There's no scene editor here at all; everything is code, which rules it out for anyone who wants to iterate visually the way Godot or Cocos allow. iOS support leans on RoboVM, a third-party AOT compiler whose maintenance has gone quiet for stretches — a riskier dependency than anything in Godot's stack. The API itself reads dated next to newer engines: manual sprite batching, no built-in ECS, and the HTML5 path through GWT feels like a holdover from an earlier web.

★ 26,204TypeScriptApache-2.0updated Oct 2026

best for 3D in the browser, especially projects that need WebGPU now

Babylon.js runs WebGPU and WebGL side by side, maintaining GLSL and WGSL shader paths in parallel — most of the field is still catching up to that. Microsoft backs it directly, so it isn't going anywhere, and the online playground full of runnable examples makes prototyping faster than it is in Phaser or libGDX, where you're building your own test harness. Navigation mesh baking runs on a worker thread and is solid enough to ship with, unusual for something bundled into a web engine rather than added on top.

Tree-shaking helps, but the core package is still heavy, and keeping bundle size down takes real discipline about which modules you import. The audio system is mid-migration — an old API and a new AudioV2 one both exist in the source, so you inherit someone else's unfinished decision. Past the playground's happy path, documentation thins out fast; custom render pipelines and material plugins usually mean reading source instead of docs.

★ 9,872C++NOASSERTIONupdated Oct 2026

best for teams shipping mobile games into China or WeChat mini-games

Cocos' GFX layer compiles the same shader code to Vulkan, Metal, WebGL2 and WebGPU automatically, which removes a category of per-platform work that libGDX and Phaser leave to you. Mini-game support for WeChat, TikTok and Facebook Instant Games comes from people who ship on those platforms themselves, not bolted on as an afterthought, and the Marionette animation system — pose graphs, blend trees — matches what Unity ships rather than offering a scaled-down version of it.

The trade-off is that Cocos Engine isn't meant to run outside Cocos Creator; there's no dropping this into your own build pipeline the way you can with libGDX or Bevy. Documentation gets thin fast once you're past the basics, and most of the deeper community knowledge lives in Chinese-language forums rather than English docs or Stack Overflow. The mixed C++/TypeScript architecture also means a native crash doesn't hand you a stack trace that makes sense from the scripting side.

★ 40,524JavaScriptMITupdated Aug 2026

best for 2D browser games, especially ones targeting Discord Activities or Playables

Version 4 rewrote the renderer from scratch — proper WebGL state management, index buffers for quads, smarter texture batching — rather than just bumping a number. SpriteGPULayer and TilemapGPULayer push sprite and tile data into static GPU buffers and draw it in one call, the right way to handle large sprite counts and something neither libGDX nor Babylon.js offers out of the box for 2D specifically. The full build, physics and tilemaps and tweens included, still comes in around 345KB gzipped.

Anyone carrying a v3 codebase is looking at real rework: the renderer, tint system, masks and several core classes all broke in the move to v4. Physics has always been the weak spot — Matter.js is wrapped rather than integrated, and Arcade physics is fast but hits a wall fast on anything more complex than platformer collisions. The example library, over 2000 strong, is still mostly v3-era, so a lot of what you find while learning doesn't match the engine you're running now.

★ 6,407C++NOASSERTIONupdated Oct 2026

best for small studios wanting a free, production-proven engine with wide platform reach

Defold has shipped real, commercial titles rather than just demos, and its build system cross-compiles to iOS, Android, consoles, HTML5 and desktop with dedicated docs for each target — a wider matrix than Cocos or libGDX attempt. The CI setup, with separate pipelines for engine nightlies, editor builds and external dependencies like ASTC and Dawn, shows the kind of engineering discipline a complex C++/Java/Clojure toolchain needs to stay stable.

That same split — C++ engine, Java/Clojure editor, Lua scripting — means contributing anything beyond a small patch takes understanding three unrelated languages, a much higher bar than Godot's GDScript or Bevy's single-language Rust codebase. Console support referenced in the description is gated behind private, licensed builds, so the public repo isn't the whole story if that's what you need. Getting a build running at all means working through several long READMEs across build_tools, ci and external before anything compiles.

★ 27,789JavaScriptNOASSERTIONupdated Oct 2026

best for people who want to ship a real game without writing code

GDevelop's event sheets aren't a toy demo — there are shipped games on Steam, mobile stores and itch.io built entirely on them, more than most no-code tools can claim. Underneath, it's a real pipeline: PixiJS for 2D, Three.js for 3D, Box2D and Jolt compiled to WASM for physics, all driven through one event model instead of three separate libraries bolted together. MIT covers the engine, IDE and extensions, so a published game carries no licensing strings the way a Unity export might.

The event sheets hit a ceiling once game logic gets complicated — past a certain point you're fighting drag-and-drop instead of writing the logic, and unlike Bevy or libGDX there's no clean way to drop into code and keep going. The project spans four different stacks — C++ core, TypeScript engine, JS/WASM bindings, an Electron IDE — so anyone wanting to contribute beyond an extension is in for a longer ramp than Godot or Phaser. The name and logo are explicitly carved out of the MIT license as the maintainer's property, worth knowing if a fork or rebrand is ever on the table.

★ 49,174RustApache-2.0updated Oct 2026

best for Rust developers who want compiler-enforced safety and don't mind a moving target

Systems in Bevy are plain functions, queries are type-safe, and the compiler enforces data-race freedom instead of leaving it to convention the way libGDX or Cocos do — the cleanest ECS design in this group. The plugin system lets you split a game into crates and compose them without fighting the engine, and the 300-plus example library is the most thorough way to learn any engine here, covering compute shaders and animation graphs most competitors don't document at all.

Moving fast shows up in breaking API changes roughly every three months, and community plugins routinely lag behind releases — budget for hitting an unmaintained crate along the way. The UI system is still the weak point: flexbox-only layout, no retained-mode widgets, so anything past a debug HUD means waiting on Bevy's in-progress overhaul or reaching for bevy_egui. Compile times are rough enough, even with the fast-compile setup, that a clean build on a mid-range machine takes minutes and breaks the iteration flow Godot or Phaser give you for free.

// questions people ask

Before you choose

Do any of these compete with Unity or Unreal for full 3D production?

Godot is the closest in ambition, but its global illumination and lighting pipeline still trail Unity and Unreal in bake time and quality. Bevy is aimed at that scope long-term but doesn't have the tooling maturity yet for a full production pipeline.

Which engine is best for a browser game?

Phaser for 2D and Babylon.js for 3D — both ship straight to the browser with no plugin or export step in between. Babylon.js also runs on WebGPU alongside WebGL, which Phaser doesn't offer.

What if I don't want to write code at all?

Only GDevelop has a proven no-code path to a shipped game, using event sheets instead of a scripting language. It has a ceiling on complex logic, but real games on Steam and mobile stores have been built entirely that way.

Which one should I use for mobile games aimed at China or WeChat mini-games?

Cocos is built for that specifically — its mini-game support for WeChat, TikTok and Facebook Instant Games is maintained by people shipping there, not an afterthought. The trade-off is a smaller English-language community and documentation that thins out past the basics.

If the goal is just a real 2D or 3D game without fighting the tooling, start with Godot and move to something narrower — Phaser, Bevy, GDevelop — once the platform and workflow are clear.

// how we picked these

Every repo here was read and assessed on its own before it was considered for this page: we pull the README, the directory layout and a key source file, and write the assessment from those rather than from the project's own marketing. Candidates for this list came from a full-text and topic search over the 256 reviewed repositories that matched this category. Anything with no commit in the last 12 months was cut, as were link collections, tutorials and boilerplates; the floor for inclusion was 2.000 stars. The ordering is a judgement call about who should pick what, not a ranking by stars. finds.dev is independent of every project listed here: nobody paid for a place on this page, there are no affiliate or referral links on it, and we have no commercial relationship with any of them. That is the point of writing down what each one is bad at as well as what it is good at.

Our criteria →