FOSSPicks

Games engine

Bevy

There are many open source game engines. GamingOnLinux.com lists 21, from the amazingly comprehensive Godot to the humble Pygame. Bevy is a new addition, and if your ambitions are modest, it already offers a wonderful environment from which to build a cross-platform game. Unlike with Godot, though, Bevy development requires you to dive into the programming aspect from the beginning. This is because Bevy describes itself as a "data-driven" game engine using the Entity Component System (ECS) paradigm. This is the hot new thing in game development, and it is even being deeply explored by game engine behemoth Unity. Exploring Bevy's excellent documentation reveals ECS to be a programming methodology based on composing your game from entities, components, and systems. As the documentation puts it, "Entities are unique things that are assigned groups of Components, which are then processed using Systems."

In practice, this is considerably different from working with something like Pygame, especially when Bevy itself is written in, and dependent upon, the Rust programming language and framework. Rust is similar to C++, but also thoroughly modern in its design, making it safer and easier to work with. It also helps to make the ECS implementation in Bevy relatively easy to understand and use, thanks to it using normal Rust data types rather than new complex ECS-only types. This is all covered in the excellent beginner's tutorial, and it does a great job of introducing these concepts and showing how advantageous they can be in writing performant code. If the included examples are anything to go by, the results can be seriously impressive, with both 2D and 3D projects. When this is tied to Rust's super fast compile times, hot reloading of changed assets without restarting your game, and Rust's excellent integration into tools like Visual Studio Code, Bevy feels like the beginning of something revolutionary in game design.

Project Website

https://bevyengine.org/

Game building in Bevy uses the Entity Component System (ECS), which is sadly nothing to do with the ECS chipset on the Commodore Amiga.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News