For gaming, the strongest matches are bevyengine/bevy (Bevy is a full-featured, cross-platform game engine built in), id-software/quake (This repository provides the original C source code for) and luanti-org/luanti (Luanti is an open-source voxel game engine that supports). anuken/mindustry and spring/spring round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked open-source game development engines ranked by GitHub stars and activity. Compare the top frameworks and pick the right one.
Bevy is a cross-platform game engine and framework built in Rust, designed for creating interactive simulations and graphical applications. It utilizes a data-oriented entity-component-system architecture to manage game state, organizing data into contiguous memory blocks to facilitate high-performance processing and massive parallelization of entities. The engine distinguishes itself through a modular plugin architecture and a system-based task scheduler that automatically parallelizes logic by analyzing data access patterns. By employing reactive change detection and deferred command buffer
Bevy is a full-featured, cross-platform game engine built in Rust featuring a modular entity-component-system architecture and a plugin ecosystem that covers the core tools needed for building and rendering games.
This is the original C source code for the Quake game engine, a landmark first-person shooter engine from the 1990s. It is a retro game engine that renders 3D environments and processes player input in real time using CPU-based software rendering rather than GPU acceleration. The engine supports networked multiplayer gameplay over LAN or internet connections and is designed to be moddable, allowing users to create and run custom game modifications and levels. The engine's architecture includes a Binary Space Partition tree for efficient world geometry organization and visibility determination
This repository provides the original C source code for the classic Quake game engine, offering a historically significant platform featuring 3D rendering, multiplayer networking, asset management, and moddable scripting for building retro games.
Luanti is an open-source sandbox game engine designed for the creation and exploration of interactive three-dimensional voxel environments. It functions as a platform for building persistent digital spaces where users can modify block-based worlds and share custom content. The engine provides a framework for multiplayer interaction, utilizing a client-server architecture to synchronize world states across connected participants. It incorporates a scripting interface that allows for the integration of user-created modifications, alongside a centralized distribution system for managing and inst
Luanti is an open-source voxel game engine that supports multiplayer interaction and Lua-based modding, though it focuses specifically on block-based sandbox worlds rather than a general-purpose 3D pipeline.
Mindustry is a cross-platform game engine and factory automation simulation that combines resource management with tower defense strategy. Players construct complex supply chains and automated networks to process materials while building defensive structures to protect a core from waves of hostile mechanical forces. The project utilizes a deterministic lockstep networking model to ensure simulation consistency across desktop and mobile devices. It is built on an entity-component-system architecture and a tile-based grid simulation, allowing for the efficient management of thousands of active
Mindustry is an open-source sandbox tower defense game and engine that features cross-platform support, multiplayer networking, scripting support, and grid simulation, making it a great fit even though it is primarily a specific game rather than a general-purpose engine.
Spring is a cross-platform game engine and framework designed specifically for the development and execution of multiplayer real-time strategy games. It provides a high-performance simulation environment for managing large-scale battles and unit movements across different operating systems using a shared codebase. The engine functions as a multiplayer game server and networking layer, coordinating real-time game state and match synchronization between remote players. It includes a dedicated lobby client system for multiplayer match coordination as well as the capability to execute single-play
Spring is a cross-platform game engine and framework built specifically for multiplayer real-time strategy games, featuring robust networking, simulation, and scripting capabilities that match this search.
This project is a multi-purpose web platform serving as a canvas 2D game engine, a frontend engineering blog, and a markdown static site generator. It functions as a web graphics showcase and a technical knowledge base for sharing architectural decisions and performance optimizations. The platform implements a high-performance graphics framework using low-level drawing APIs, integrating skeletal animation and web physics for collision detection and realistic motion of two-dimensional objects. It simultaneously operates as a system for converting markdown source files into pre-rendered HTML pa
This project includes a built-in 2D canvas game engine and physics framework alongside its static site generator features, making it a relevant choice for lightweight web-based game development.
Urho3D is a cross-platform 3D game engine written in C++. It uses a component-based scene graph to compose game objects from nodes and attached components, separating transforms from behaviors for modular design. The engine integrates AngelScript and Lua scripting for game logic, uses the Bullet library for physics simulation, and renders scenes with OpenGL or Direct3D through forward, deferred, or light pre-pass pipelines with customizable render passes and shadow mapping. The engine distinguishes itself with a built-in visual scene and UI editor for composing 3D worlds and interface layouts
Urho3D is a complete, cross-platform 3D game engine featuring integrated graphics rendering, physics simulation via Bullet, and scripting support, perfectly matching the requirements for building open-source games.
cocos2d-iphone is a framework for 2D game development and the creation of two-dimensional graphical applications. It enables cross-platform development for iOS and macOS using Objective-C and high-performance graphics rendering. The project provides tools for building interactive environments, including the creation of orthogonal, isometric, or hexagonal tile-based maps. It supports the implementation of rigid body dynamics and collision detection through a 2D physics simulation system. The framework covers a broad range of capabilities, including sprite-based rendering, audio playback manag
This repository is a cross-platform 2D game framework and engine for Apple platforms, supporting graphics rendering, physics simulation, and tile maps, though it is limited to 2D development and lacks multiplayer networking.
Battle for Wesnoth is an open-source turn-based strategy game set in a high fantasy world, built around hex-grid tactical combat. At its core, it is both a complete game and a game engine, offering single-player campaigns and multiplayer battles where players command faction-specific units across terrain that provides tactical advantages. The project is fundamentally a turn-based strategy game with a dedicated multiplayer platform, supporting online and local matches with replay recording and playback. What distinguishes Wesnoth is its deep commitment to custom content creation and modding. T
Battle for Wesnoth is a turn-based strategy game and embedded engine that supports multiplayer battles, custom content creation, and campaign editing, though it lacks general-purpose 3D rendering and physics simulation features.
Cocos2d-x is a high-performance C++ game development framework designed for building and deploying interactive applications across mobile, desktop, and web platforms. It functions as a cross-platform game engine that utilizes an entity-component system to manage object lifecycles, behaviors, and spatial relationships within a unified codebase. The engine is distinguished by its specialized 2D graphics rendering pipeline, which is optimized for hardware-accelerated performance when displaying sprites, particle effects, and skeletal animations. It provides developers with low-level access to gr
Cocos2d-x is a cross-platform C++ game engine tailored for high-performance 2D development, offering solid scripting and rendering capabilities even though it lacks integrated 3D physics.
Godot is a comprehensive, node-based game engine designed for building interactive 2D and 3D applications. It provides an integrated development environment that utilizes a hierarchical scene system to organize objects, propagate spatial transformations, and manage lifecycle events. The engine functions as a cross-platform development suite, allowing developers to author, test, and export software to desktop, mobile, and web environments from a single, unified codebase. The engine distinguishes itself through a modular, component-based architecture that relies on signals-based decoupling for
Godot is a feature-rich, open-source game engine providing cross-platform support, built-in physics, a graphics rendering engine, and scripting capabilities, making it a comprehensive solution for building and running games.
Phaser is a comprehensive 2D game engine designed for building high-performance, interactive content that runs directly in web browsers. At its core, the engine utilizes a fixed-timestep simulation loop that decouples game logic from variable browser frame rates, ensuring consistent behavior across diverse hardware. It provides a robust framework for managing asset loading, physics, input, and audio, enabling the creation of complex, responsive visual experiences for both desktop and mobile devices. The engine distinguishes itself through a high-performance graphics pipeline that automaticall
Phaser is an established 2D browser-based game engine providing built-in physics, asset management, and graphics rendering, though it is scoped strictly to two-dimensional web development rather than general 3D creation.
FXGL is a 2D game engine and development framework designed for Java and Kotlin. It provides a structured environment for building cross-platform desktop games, integrating a central game loop with an entity component system and a JavaFX-based scene graph for rendering. The toolkit distinguishes itself by providing a comprehensive suite of integrated libraries for game AI pathfinding, physics collision resolution, and multiplayer networking via TCP and UDP protocols. It includes specialized systems for adaptive user interface design using global stylesheets and a data-driven asset management
This is a Java and Kotlin-based 2D game engine that provides cross-platform support, physics simulation, multiplayer networking, and an asset management pipeline, making it a great fit for Java game development despite its 2D-only scope.
OpenTTD is an open-source game engine and transport simulation game. It provides an isometric sandbox environment for building and managing complex logistics and transport networks. The project functions as a multiplayer simulation sandbox where users can build infrastructure cooperatively or competitively in a shared virtual world. The platform is designed as a moddable simulation system that supports external assets, graphics, and gameplay modifications. It includes mechanisms for downloading and integrating add-on content and utilizes a plugin-based system to extend game mechanics beyond t
OpenTTD is an open-source transport simulation game and engine that offers multiplayer networking, asset management, and cross-platform support, though it is tailored specifically to strategy and simulation rather than a general-purpose game engine.
This project is a WebGL 3D game engine and comprehensive suite of tools for rendering high-performance 3D graphics and interactive scenes in the browser using WebGL and WebGPU. It provides a dedicated WebXR framework for building augmented and virtual reality experiences that run directly in a web browser. The engine includes a specialized Gaussian splatting renderer for displaying 3D point-cloud data to create photorealistic environmental captures. It utilizes a glTF asset pipeline to load and stream compressed 3D models and textures for efficient asset delivery. The system covers real-time
PlayCanvas is an open-source 3D WebGL and WebGPU game engine that provides graphics rendering, physics simulation, asset pipelines, and scripting for browser-based games, though it is specifically tailored for the web rather than a traditional desktop runtime.
LibGDX is a Java-based framework designed for cross-platform game development, enabling the creation and deployment of 2D and 3D games across desktop, mobile, and web environments from a single codebase. It functions as a comprehensive library that abstracts hardware-accelerated graphics, audio, input, and file system access, providing a unified interface for developers to manage game logic and application lifecycles. The framework distinguishes itself through a high-performance architecture that prioritizes efficiency and native interoperability. It utilizes a batch-oriented graphics pipelin
LibGDX is a Java-based game development framework that supports cross-platform 2D and 3D creation with built-in graphics, audio, and asset handling, though it is a code-first library rather than a full visual engine.
BrowserQuest is a WebSocket multiplayer game engine and real-time state synchronization tool. It functions as a web-based game server designed to manage concurrent connections and broadcast updates to maintain a consistent shared world state between a central server and distributed web clients. The project enables real-time multiplayer gaming and browser-based game development by implementing low-latency data exchange. It focuses on game state synchronization to ensure that multiple players interacting within the same environment see the same actions and world states simultaneously. The syst
BrowserQuest is a browser-based multiplayer game engine focused on real-time state synchronization and server infrastructure, though it is unmaintained and lacks a modern graphics or physics pipeline.
vcmi is an open-source game engine for Heroes of Might and Magic III that recreates the gameplay, logic, and rendering of the original strategy game. It serves as a cross-platform game runtime supporting Windows, Linux, macOS, Android, and iOS, providing a turn-based strategy simulator for strategic world map navigation and tactical combat. The project is built as a moddable game framework, featuring a data-driven modding system and a sandboxed Lua scripting integration. These allow for the definition of custom gameplay logic, spell effects, and the addition of new factions, characters, and a
VCMI is an open-source game engine that recreates and extends Heroes of Might and Magic III with cross-platform support, modding, and scripting, though it is tailored for a specific classic game rather than being a general-purpose engine.
This project is a C-based multimedia toolkit and cross-platform game framework designed for building interactive applications. It provides a low-level programming interface that grants direct access to hardware-accelerated graphics, real-time audio processing, and user input handling. By utilizing an immediate-mode rendering architecture, the library processes visual state changes frame-by-frame, which simplifies the logic required for dynamic interfaces and interactive simulations. The library distinguishes itself through a zero-dependency design that avoids complex external build requiremen
It is a lightweight C-based game framework designed for building interactive applications with cross-platform graphics, but it omits built-in multiplayer networking and physics simulation.
Duelyst is a turn-based strategy game engine and multiplayer framework designed for collectible card games. It provides a dedicated architecture for managing tactical combat and card-driven interactions across both web and desktop environments. The platform distinguishes itself through a self-hosted infrastructure that utilizes containerized environments to deploy private game sessions. This approach grants players full access to game content and ensures consistent deployment across local and remote systems. The engine also features a data-driven localization system that separates game text i
Duelyst is a turn-based strategy game engine and multiplayer framework tailored for collectible card games, supporting cross-platform web and desktop environments and self-hosted server deployment.
OpenRA is an open-source game engine designed for the development and modernization of real-time strategy titles. It provides a modular framework that allows developers to build standalone games or total conversion modifications by leveraging a trait-based entity composition system. The engine is built to support both the preservation of classic strategy games and the creation of new experiences, offering cross-platform compatibility and a flexible architecture for defining game rules and unit behaviors. The engine distinguishes itself through a configuration-driven approach where game logic,
OpenRA is a specialized game engine focused on real-time strategy titles with cross-platform support and a modular framework, though it lacks general-purpose 3D rendering and physics simulation.
Minetest is an open-source voxel game engine and platform used to create and share moddable 3D block-based games. It provides a framework for building interactive grid environments and generating custom voxel worlds. The project features a Lua-based modding framework that allows for the extension of game behavior and the addition of custom content without altering the core engine. This data-driven system supports a dedicated workflow for modifying game environments and logic. The engine supports multiplayer game hosting through a dedicated server architecture, enabling multiple players to co
Minetest is an open-source voxel game engine that provides cross-platform gameplay, multiplayer hosting, and a Lua scripting framework for modding, though it focuses specifically on block-based worlds rather than general 3D rendering.
Pumpkin is a high-performance Minecraft game server implementation designed to host shared virtual worlds. It is specifically built to support multiple client editions, allowing different game versions to interact within a single world. The project distinguishes itself through a flexible plugin architecture that supports extensions written in Go and Python. These extensions are loaded as portable binary modules, enabling developers to implement custom game logic and modify server behavior without altering the core codebase. The server covers a broad range of operational capabilities, includi
Pumpkin is a high-performance Minecraft game server implemented in Rust, which serves as a specialized hosting platform for shared virtual worlds rather than a general-purpose game engine.
Superpowers is a browser-based game development engine and collaborative integrated development environment. It provides a unified workspace for building two-dimensional interactive experiences, allowing users to manage code, assets, and scene logic directly within a web browser without the need for local compilers or heavy desktop software. The platform distinguishes itself through a modular, component-based scripting architecture where game objects are defined by attached logic and visual properties. It supports real-time synchronization, enabling multiple developers to work on the same pro
Superpowers is a browser-based game development engine that provides collaborative tools, asset management, and a component-based scripting architecture for building 2D games, though it leans toward a collaborative IDE approach rather than a full 3D pipeline.
Unciv is an open-source, cross-platform turn-based strategy game and a community-driven remake of a commercial strategy title. It simulates empire building, city management, and technological research for players on Android and desktop platforms. The project is designed as a moddable game engine, allowing users to override gameplay rules, modify units and buildings via external definition files, and replace audiovisual assets. It supports the distribution of custom maps and the ability to import mod archives from remote web addresses. The application includes a dedicated server for multiplay
Unciv is a cross-platform turn-based strategy game and moddable game engine that supports multiplayer networking and asset customization, though it is focused on a specific 2D title remake rather than a general-purpose 3D engine.
Space Station 14 is a C# multiplayer game and roleplay simulation framework. It is built upon an Entity-Component-System (ECS) game engine that separates logic into systems and data into components to manage complex entity interactions. The project functions as a grid-based physics simulator with a YAML data-driven prototype system for defining game objects. The project features a specialized 2D sprite rendering engine that maps server-side appearance data to client-side shaders. It implements a networking model with client-side prediction and dirty-flagged state synchronization to reduce inp
Space Station 14 is a multiplayer C# game and simulation framework built on a custom Entity-Component-System engine, serving as both a playable game and a robust engine platform.
This repository contains the C++ game source code for a single-player first-person shooter action game. It is a software implementation of the Id Tech 4 engine, designed for 3D rendering with a focus on real-time unified lighting and geometry. The project enables the modification of core engine logic and rendering systems. It serves as a resource for classic game engine modification, first-person shooter development, and retro game preservation. The engine utilizes a unified shader pipeline and stencil shadow volumes for lighting effects, alongside BSP tree spatial partitioning for visibilit
This repository provides the open-source C++ source code and engine for Doom 3 BFG, making it a classic game engine for building and modifying first-person shooters, though it lacks some modern multi-platform and multiplayer features out of the box.
Babylon.js is a JavaScript game engine and real-time graphics renderer designed for creating interactive three-dimensional visuals and applications. It functions as a web-based 3D framework and WebGL engine that enables the deployment of high-performance 3D content across various web platforms and devices. The project provides tools for web-based 3D game development, real-time graphics rendering, and the creation of browser-based interactive visualizations. It also supports the development of WebXR virtual and augmented reality experiences using standard web technologies. The framework cover
Babylon.js is a web-based JavaScript game engine focused on real-time 3D graphics and rendering, making it a strong fit for browser-based game development even though it is tailored specifically for the web rather than a traditional desktop engine.
This project is a first-person shooter game engine and a pseudo-3D rendering engine written in C. It serves as a software framework for rendering three-dimensional environments and managing entity physics. The engine includes a networked multiplayer system designed to synchronize game state and player actions across a client-server network. It utilizes a portable codebase that allows game logic to be adapted across different operating systems and hardware architectures. Core capabilities cover 3D game engine architecture, including spatial partitioning and depth-based rendering. The system a
This repository provides a foundational game engine and first-person shooter codebase featuring cross-platform support, physics simulation, and multiplayer networking, making it a classic option for building and studying game engines.
Pygame is a framework for building interactive 2D applications and games using the Python programming language. It functions as a 2D graphics rendering engine, a game input and event manager, and a multimedia audio toolkit. The project serves as a wrapper for the Simple DirectMedia Layer, providing a Python interface for low-level access to graphics, audio, keyboard, mouse, and joystick hardware. Its capabilities cover 2D graphics rendering and image manipulation, digital audio playback and streaming, and the management of game entities and physics simulations. It also includes tools for rea
Pygame is an established Python game framework for building 2D games and applications, serving as a lighter-weight alternative to full-suite 3D engines while fulfilling the core game engine criteria.
LÖVE is a cross-platform game engine and framework for developing two-dimensional games using the Lua programming language. It provides a 2D graphics API for rendering shapes, images, and sprites across multiple desktop and mobile platforms. The framework enables the development of a single codebase that can be deployed to Windows, macOS, Linux, Android, and iOS. It utilizes a Lua-based scripting interface to control internal engine systems. The project covers 2D game development, mobile game development, and cross-platform game deployment.
LÖVE is a cross-platform 2D game engine that supports Lua scripting and cross-platform deployment, fitting the category well despite being specialized for two-dimensional games rather than full 3D suites.
Endless Sky is an open-source space trading simulation, 2D space combat simulator, and narrative exploration game. It functions as a plugin-based game engine that allows users to explore a vast universe, engage in tactical ship battles, and progress through a central plot within a sandbox environment. The project is distinguished by its highly moddable architecture, utilizing a directory-based plugin system and data-driven entity definitions to allow for content extensions and behavior overrides without recompiling source code. It further supports visual customization through programmable ver
Endless Sky is a fully playable open-source space combat and trading game built on an engine-like moddable architecture, making it a great fit for exploring an actual open-source game rather than a standalone game development suite.
jMonkeyEngine is a Java-based 3D game engine and cross-platform graphics framework. It provides the core tools necessary for developing three-dimensional games and interactive simulations, focusing on real-time rendering and the management of spatial environments. The engine includes a dedicated 3D physics simulation toolkit for handling rigid body dynamics and collision detection. It also features a game asset pipeline for importing and managing 3D models, textures, and audio files during runtime. The framework covers broad capability areas including 3D scene rendering, physics-based simula
jMonkeyEngine is a comprehensive Java-based 3D game engine and graphics framework that provides cross-platform support, a rendering pipeline, physics simulation, and an asset management pipeline, making it a strong fit for building games despite lacking built-in multiplayer networking.
DEPRECATED Git mirror of the 0 A.D. SVN source code (migrated to https://gitea.wildfiregames.com on August 20th 2024)
This repository provides the complete source code for a real-time strategy game and its engine, making it a fitting open-source gaming project despite being deprecated in this specific Git mirror location.
This project is a pure Python game engine and development framework designed for building interactive games without relying on external binary dependencies. It functions as a template library that provides a collection of pre-built game examples and architectural patterns to assist in learning game development logic. The framework supports a prototyping workflow and educational programming through a system of reference examples. It includes a dispatcher for launching specific or random game modules, allowing for the analysis of different functional capabilities and structural patterns. The s
This repository provides a Python-based game engine and educational framework for building 2D games, fitting the category even though it is focused on prototyping and learning rather than heavy production features.
TripleA is a turn based strategy game and board game engine, similar to Axis & Allies or Risk.
TripleA is an open-source turn-based strategy game and board game engine that lets you play and create board games, though it is specifically focused on strategy rather than general-purpose game development.
Simple and beautiful memory game for kids
This repository provides a simple memory game for kids, making it an in-category open-source game even though it lacks advanced engine features like physics simulation and multiplayer networking.
A high speed C++17 Vulkan game engine
Equilibrium is a code-first Vulkan game engine written in C++ that covers graphics rendering, though it lacks higher-level features like multiplayer networking and asset management pipelines.
Tower Game is a browser-based JavaScript engine designed for building physics-driven stacking simulations. It provides a framework for developing interactive arcade-style challenges where players align blocks to build structures, with core systems that manage collision logic, health tracking, and precision-based scoring. The engine distinguishes itself through a modular architecture that allows for deep customization of gameplay mechanics. Developers can inject custom functions to override default movement speeds, oscillation angles, and scoring triggers at runtime. Additionally, the system s
Tower Game is a browser-based JavaScript engine tailored for physics-driven stacking simulations, though it focuses narrowly on 2D arcade mechanics rather than providing a full-scale multi-platform game creation suite.
Game engine made on C++ with OpenGL and SDL (Simple DirectMedia Layer)
This C++ game engine provides a core graphics rendering and platform integration layer using OpenGL and SDL, though it lacks several advanced features like multiplayer networking or a full asset pipeline.
OpenCiv3 (formerly known by the codename "C7") is an open-source, mod-oriented remake of Civilization III by the fan community built with Godot and C#, with capabilities inspired by other 4X games and lessons learned in Civ3 modding. We aim to create a new game that looks and plays like Civ3 but…
This repository is a game engine implementation specifically tailored for a Civilization III remake, fulfilling the open-source game category even though it is narrower and more specialized than a general-purpose game engine.
This project is a browser-based game engine and implementation of a racing game built using a declarative component architecture. It provides a framework for constructing interactive three-dimensional environments and game objects by mapping hierarchical data structures to a persistent scene graph. The engine distinguishes itself by synchronizing game logic with high-performance rendering through a centralized data store. This approach ensures that physics calculations, player progress, and environmental variables remain consistent with the visual output of the scene. Developers can compose c
This TypeScript repository provides a browser-based 3D game engine and racing game implementation featuring declarative scene graphs, real-time rendering, and state management, though it lacks built-in multiplayer networking.
Planimeter Game Engine 2D - LÖVE-based game engine for Lua
This LÖVE-based 2D game engine uses Lua for scripting and provides a structured framework for building games, though it is narrower in scope than a full cross-platform 3D suite.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| bevyengine/bevy | 46.6K | Rust | Apache-2.0 | |
| id-software/quake | 5.7K | C | — | |
| luanti-org/luanti | 13K | C++ | NOASSERTION | |
| anuken/mindustry | 26.6K | Java | gpl-3.0 | |
| spring/spring | 3.9K | C++ | NOASSERTION | |
| tmallfe/tmallfe.github.io | 3.9K | HTML | — | |
| urho3d/urho3d | 4.7K | C++ | mit | |
| cocos2d/cocos2d-iphone | 4K | Objective-C | NOASSERTION | |
| wesnoth/wesnoth | 6.7K | C++ | GPL-2.0 | |
| cocos2d/cocos2d-x | 18.9K | C++ | — |