For a game engine written in Rust, the first results are bevyengine/bevy (Bevy is a comprehensive, data-oriented game engine built in Rust that features a native ECS architecture, cross-platform support, and a modular plugin system, making it a flagship choice for Rust-based game development), fyroxengine/fyrox (Fyrox is a comprehensive, native Rust game engine that features an ECS architecture, cross-platform support for desktop and web, and built-in tools for 2D and 3D development, including hot reloading and scripting capabilities) and amethyst/amethyst (Amethyst is a comprehensive, data-driven game engine built in Rust that features an ECS architecture, hybrid 2D/3D rendering, and extensive support for asset management and simulation, making it a flagship example for this category). pistondevelopers/piston and ggez/ggez round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
We curate open-source GitHub repositories matching “best rust game engines”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
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 comprehensive, data-oriented game engine built in Rust that features a native ECS architecture, cross-platform support, and a modular plugin system, making it a flagship choice for Rust-based game development.
Fyrox is a Rust-based game engine for building both 2D and 3D games, designed as a native engine with no runtime dependencies. It compiles directly to native code for Windows, macOS, Linux, and WebAssembly, providing direct hardware access through the Rust programming language. The engine is built around an entity-component-system architecture that organizes game objects as entities with attached components processed by modular systems. Its graph-based scene management represents game scenes as directed acyclic graphs of nodes with transform hierarchies and property inheritance, while a paral
Fyrox is a comprehensive, native Rust game engine that features an ECS architecture, cross-platform support for desktop and web, and built-in tools for 2D and 3D development, including hot reloading and scripting capabilities.
Amethyst is a data-driven game engine written in Rust for building high-performance 2D and 3D games. It is built on an entity component system architecture that decouples game state from logic to enable parallel processing and reusable code. The framework features a glTF 3D renderer for importing scenes and geometry using physically based materials. It also serves as a multiplayer game framework, providing network transport abstractions and state synchronization for real-time online experiences. The engine covers a broad range of capabilities, including hybrid 2D/3D rendering, asynchronous a
Amethyst is a comprehensive, data-driven game engine built in Rust that features an ECS architecture, hybrid 2D/3D rendering, and extensive support for asset management and simulation, making it a flagship example for this category.
Piston is a modular game engine and framework written in Rust for building two and three-dimensional graphical applications. It functions as a cross-platform windowing library and a system for managing input events and window loops across different operating systems. The project provides specialized rendering systems, including a voxel rendering engine for volumetric pixels and a skeletal animation system for deforming meshes via hierarchical bone structures. It also features an immediate mode user interface toolkit for creating responsive on-screen elements and a behavior tree AI framework t
Piston is a modular, cross-platform game engine written in Rust that provides the core windowing, input, and rendering abstractions needed to build 2D and 3D games, though it lacks a built-in ECS architecture compared to more modern, monolithic alternatives.
ggez is a 2D game framework for the Rust programming language. It provides a hardware abstraction layer for accessing keyboard, mouse, sound, and graphics hardware, alongside a dedicated game loop manager that synchronizes input processing, state updates, and frame rendering for real-time applications. The framework includes a hardware-accelerated rendering engine for drawing sprites, shapes, and text using shader programs. It also features a resource management system that uses a filesystem abstraction to load and manage game assets from physical directories or compressed archives. Addition
ggez is a lightweight, 2D-focused game framework for Rust that provides the essential game loop, asset management, and rendering capabilities required for game development, though it lacks a built-in ECS architecture.
s&box is a game development platform built on Valve's Source 2 engine, integrating the .NET runtime as a first-class scripting and gameplay logic layer. It provides a full-featured visual editor that combines asset management, level design, and code editing into a single workflow, enabling developers to create and edit games within a modern editor environment. The platform distinguishes itself through a managed-native interop bridge that allows C# code to interact directly with native Source 2 systems for high-performance communication, alongside a hot-reload scripting system that supports li
This is a C#-based game development platform built on the Source 2 engine, which does not align with the requirement for a framework or engine designed for the Rust programming language.
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
While this is a comprehensive and powerful game engine, it is built primarily in C++ rather than Rust, making it a different tool than the language-specific framework you requested.
PhysicsJS is a JavaScript physics engine and 2D rigid body simulator designed to calculate the collisions, constraints, and dynamics of physical bodies. It functions as a modular physics library for simulating the movement and interaction of circular bodies and convex polygons. The engine implements constraint-based dynamics to enforce distance and angle constraints between objects, enabling the creation of articulated structures and linked physics. It utilizes impulse-based resolution to handle collisions and prevent objects from passing through one another. The library provides capabilitie
This is a JavaScript-based physics library for 2D simulations rather than a Rust-based game engine, making it a building block for physics rather than the comprehensive framework requested.
MuJoCo is a physics simulation engine designed for the dynamics of multi-joint articulated structures. It provides a computational framework for calculating the forces, velocities, and physical interactions of complex models within a virtual environment, supporting research in robotics, biomechanics, and machine learning. The engine utilizes a constraint-based dynamics solver and recursive algorithms to manage the motion of articulated systems. It includes a native graphical interface for real-time visualization, allowing users to inspect physical behaviors and contact dynamics as they occur.
MuJoCo is a specialized physics simulation engine for robotics and biomechanics rather than a general-purpose game engine, making it a building block for physics rather than a complete framework for game development.
Piccolo is a mini game engine designed for building small-scale games with cross-platform support. It compiles and runs on Windows, macOS, and Linux from a unified codebase, and includes an editor integration for live editing and debugging. The engine uses a component-based entity system with data-oriented design, storing component data in contiguous arrays for cache-friendly iteration. It features a fixed timestep game loop that decouples simulation updates from rendering frame rate, and provides a physics debug overlay that renders visual shapes from simulation data synchronized with the ed
This is a game engine, but it is written in C++ rather than Rust, making it a mismatch for your specific requirement for a Rust-based development framework.
NanoVG is a hardware-accelerated 2D drawing engine and C graphics primitive library. It provides a lightweight renderer designed for high-quality antialiased vector graphics using an OpenGL backend. The engine specializes in the construction and rendering of complex geometric paths. It supports the definition of precise shapes using lines, beziers, and arcs, with integrated winding rules to create hollow areas and composite shapes. The library covers a broad range of vector graphics capabilities, including path composition and the rendering of antialiased shapes. These tools enable the devel
This is a C-based 2D vector graphics rendering library that provides low-level drawing primitives, but it lacks the ECS architecture, physics, and game-loop management required to function as a full game engine.
Bullet3 is a professional physics simulation engine designed for calculating rigid body, soft body, and collision dynamics within 3D environments and robotics applications. It functions as a computational framework for determining complex geometric intersections and contact manifolds between objects in simulated space. The library distinguishes itself through a distributed rendering framework that scales heavy graphical workloads and scene generation tasks across large clusters of machines. This capability enables the production of massive datasets by distributing complex scene generation acr
This is a specialized C++ physics and simulation library that provides collision detection and dynamics, but it is not a Rust-based game engine and lacks the comprehensive framework features required for full game development.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| bevyengine/bevy | 46.6K | Rust | Apache-2.0 | |
| fyroxengine/fyrox | 9.4K | Rust | MIT | |
| amethyst/amethyst |
| 8K |
| Rust |
| NOASSERTION |
| pistondevelopers/piston | 4.7K | Rust | MIT |
| ggez/ggez | 4.6K | Rust | MIT |
| facepunch/sbox-public | 6.3K | C# | NOASSERTION |
| godotengine/godot | 112.6K | C++ | MIT |
| wellcaffeinated/physicsjs | 3.7K | JavaScript | MIT |
| google-deepmind/mujoco | 14K | C++ | Apache-2.0 |
| boomingtech/piccolo | 6.6K | C++ | MIT |