Bevy is a refreshingly simple data-driven game engine built in Rust.
This is free and open source software.
Features include:
- Data driven – all engine and game logic uses Bevy ECS, a custom Entity Component System:
- Fast: Massively Parallel and Cache-Friendly. The fastest ECS according to some benchmarks.
- Simple: Components are Rust structs, Systems are Rust functions.
- Capable: Queries, Global Resources, Local Resources, Change Detection, Lock-Free Parallel Scheduler.
- 2D renderer – render real-time 2D graphics for games and apps:
- Features: sprite sheets, dynamic texture atlases, cameras, textures, and materials.
- Extensible: custom shaders, materials, and render pipelines.
- Common Core: builds on top of Bevy’s Render Graph.
- 3D renderer – modern and flexible 3D renderer:
- Features: lights, shadows, cameras, meshes, textures, materials, gltf loading.
- Extensible: custom shaders, materials, and render pipelines.
- Common Core: built on top of Bevy’s Render Graph.
- Render graph – compose custom render pipelines using a graph structure:
- Parallel: Render Graphs are automatically rendered in parallel.
- Modular: Build composable and reusable render logic using Render Graph nodes.
- Backend Agnostic: Not tied to a specific graphics API.
- Animation – capable animation system:
- Skeletal rig animation driven by an ECS-based joint API.
- Play multiple animations at the same time by smoothly blending between them.
- Use blend shapes / morph targets to animate vertices directly.
- Import animations from GLTF files.
- UI – custom ECS-driven UI framework built specifically for Bevy:
- Built directly on top of Bevy’s ECS, Renderer, and Scene plugins.
- Compose UIs dynamically in code or declaratively using the Bevy Scene format.
- Use a familiar “flex box” model to layout your UIs.
- Scenes – create, save, and load ECS worlds using Bevy’s Scene system:
- Loading: Loading scenes preserves entity IDs (useful for save games).
- Instancing: Instancing creates linked duplicates of scenes with new entity IDs.
- Hot Reloading: Changes to scene files are automatically applied to running apps.
- Sound – load audio files and play them on demand:
- Load audio files as assets.
- Play audio Assets using audio entities.
- Hot reloading – Get instant feedback on your changes without app restarts or recompiles:
- Asset changes are immediately reflected in running Bevy apps.
- You can currently hot-reload scenes, textures, and meshes.
- Any asset type can be integrated.
- Productive compile times:
- With Bevy you can expect 0.8-3.0 seconds with the “fast compiles” configuration.
- Compare that to other popular Rust game engines, which can take over 30 seconds to compile a single newline insertion.
- Cross-platform support – runs under Linux, Android, iOS, macOS, and Windows.
Website: bevyengine.org
Support:
Developer: Bevy Team
License: Apache License 2.0 or MIT License
Bevy is written in Rust. Learn Rust with our recommended free books and free tutorials.
Popular series | |
---|---|
![]() | The largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions. |
![]() | Hundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information. |
![]() | The Big List of Active Linux Distros is a large compilation of actively developed Linux distributions. |
![]() | Replace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS. |
![]() | Awesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series. |
![]() | Machine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source. |
![]() | New to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux. |
![]() | Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities. |
![]() | Essential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users. |
![]() | Linux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine. |
![]() | Surveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal. |
![]() | Saving Money with Linux looks at how you can reduce your energy bills running Linux. |
![]() | Home computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum. |
![]() | Now and Then examines how promising open source software fared over the years. It can be a bumpy ride. |
![]() | Linux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged. |
![]() | Linux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery. |
![]() | Getting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers. |
![]() | Best Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series. |
![]() | These best free books accelerate your learning of every programming language. Learn a new language today! |
![]() | These free tutorials offer the perfect tonic to our free programming books series. |
![]() | Linux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts. |
![]() | Stars and Stripes is an occasional series looking at the impact of Linux in the USA. |