This Week in Bevy

What happened this week in the Bevy Engine ecosystem

Links

Ludum Dare, devtools, and a bevy_ui inspector

2025-04-14

As we get ever closer to 0.16's stable release the list of PRs merging into the release candidate is looking more and more like a few small bug fixes, which is great and points to the stable release coming fairly soon.

Some members of the community took time to participate in Ludum Dare including games about digging and about scanning the ocean seafloor.

Meanwhile crates like bevy-enhanced-input are getting better documentation and there's a new bevy_ui related inspector crate!

Forward Decals

If you are using ForwardDecals in 0.16's release candidate, the direction of the decal depth has been inverted in #18772. This new behavior matches the documentation in which a higher number means the decal will blend with surfaces further away.

Atmospheres on Web

atmosphere

#18582 introduces web support for the new atmosphere functionality. Check it out before 0.16 drops by running the atmosphere example

cargo run --example atmosphere

Showcase

Bevy work from the #showcase channel in Discord and around the internet. Use hashtag #bevyengine.

bevy inspector vscode

Bevy Inspector VS Code: Component Mutation

showcase

Mutating component values using BRP in the development version of a VSCode Bevy Inspector

bevy_midix

WIP bevy_midix

showcase

This is work in progress demo using bevy_midix, which enables the use of a soundfont and midi commands to play music in your games. It can handle input from midi devices, midi files, and other live events. The author hopes to make a release to coincide with Bevy 0.16.

card stacking

Card Stacking

showcase

This demo shows off moving cards around and stacking them and selecting the stacks to pick individual cards out of.

foxtrot

Foxtrot Rework

showcase

Foxtrot is a 3d Bevy game template aimed at desktop usage. This is a sneak peak at a rework of the template.

The goals of the rework are:

  • reduce complexity (there half as much code now)
  • reduce features (it’s only first person now)
  • make the organization in line with bevy_new_2d
  • reduce number of dependencies on crates that may take long to update to new Bevy versions
  • use more modern Bevy features such as replacing a bunch of stuff with Single and Trigger
spirit editor

bevy_materialize in spirit_editor

showcase

An integration of bevy_materialize with spirit_editor which in this demo is powering an animated portal.

perilousperilous

Perilous

showcase

Perilous is a multiplayer survival game with an emphasis on building small settlements, defending against threats, and managing the survival of villagers. Players begin alone in a cursed land and must gather resources, build fortifications, hire/attract villagers, and fend off supernatural dangers.

Something notably interesting about this project is that it uses bevy_ecs and big brain on the backend with a Phaser 3 JS frontend.

live reload

Live-Reload Proof of Concept

showcase

A live-reload proof of concept using relib, which basically means having an executable that creates the Bevy app, and a dynamic library which contains the game itself.

iggy's world

Iggy's World

showcase

An update from Iggy's World including work on the "Woodland Haven" level including quest and dialog systems powered by Yarn Spinner. There's a new Iggy model with improved controls and the project has moved to story-driven development after updating to Bevy 0.15.3. The project switched to bevy_skein and is planning on utilizing bevy_seedling, the firewheel integration crate for audio coming out of the audio working group.

lumina

Lumina 0.2.1 gameplay

showcase

Raw footage of gameplay amongst the developers of Lumina: A top down, fast paced, objective based, PvP game.

crowd simulation

Crowd Simulation

showcase

Custom, from-scratch crowd simulation working in multiple floors, simulating passengers of a subway station. A Comparative Study of Navigation Meshes is referenced as a resource for those that would also want to build similar tools.

card game

Card game visuals

showcase

visual animation for a card-related game including card selection, confirmation, and hand-to-board effects.

text editor

Text Editor with IME

showcase

A text editor with Input Method Editor support. Input Method Editors let users enter non-qwerty characters by typing a combination of keystrokes or making a sequence of mouse operations.

sonar boat game

Ludum Dare: Sonar Boat Game

showcase

An LDJAM entry: "Sonar (Boat Game)". Made with bevy and skein.

Use your Sonar to search the ocean floor! Can you find all the things?

jammy bolt digs a hole

Ludum Dare: "Jammy" Bolt Digs a Hole

showcase

A bevy entry to ludum dare using Avian, Hanabi, bevy_ecs_ldtk, i-cant-believe-its-not-bsn, and Krita.

You’re Jeremias “Jammy” Bolt, a lonely robot stuck atop an inactive volcano. You have a laser gun and not much else.

Find all the green gems, but you can’t dig upwards! If you run out of fuel, you can’t dig anymore, so keep an eye on your battery!

bevy shader inspectorbevy shader inspector

Bevy Shader Explorer

showcase

A new shader explorer that exposes structs and functions used in .wgsl files in the bevy repo. Notably this project takes a different approach than the jannik4 shader docs, choosing to use regex and handlebars instead of using naga/naga_oil to compile the shaders.

The future of shader documentation also looks interesting with prototypes that make use of the new WESL support and infrastructure.

terrain and atmosphere

Planetary Terrain and Atmosphere

showcase

A terrain and atmosphere system in a planetary environment. Clouds react to lighting and cast shadows on the terrain. The cloud texture is procedural which mean weather can change over time. There's a bunch of additional context around implementation, bevy_terrain, and the new 0.16 atmosphere features in the Discord thread.

drexls tower defense

Drexls Tower Defense

showcase

Splash damage implementation in Drexls Tower Defense. This project posts updates in its own thread in the Bevy Discord.

mevy macros

Mevy Macros

showcase

A demo of Mevy's macro implementations showing off the creation of spawning Nodes with styles and pointer interaction.

Crates

New releases to crates.io and substantial updates to existing projects

bevy-convars 0.1.1

crate_release

An early, "hey come try this out" release of bevy-convars, for bevy 0.16.0-rc.4.

bevy-convars is an implementation of "convars", a granular solution for runtime config (like render and game settings), alongside comprehensive config loading code that supports handy features like config layers.

Mevy 0.2

crate_release

mevy is a set of macros aimed at improving the developer experience of bevy_ui and bevy_ecs.

0.2 supports Bevy 0.15 and Bevy 0.16-rc through feature selection.

aalo

aalo aka bevy-inspector-haalka

crate_release

aalo is a "bevy_ui-native" inspector built with haalka which aims to port much of the behavior of bevy-inspector-egui to bevy_ui.

This is a "pre-0.1" release, so expect docs and more to improve before the 0.1 release.

bevy_text_edit 0.5.1

crate_release

bevy_text_edit is an input text plugin.

0.5.1 brings a built-in virtual keyboard.

Bevy Enhanced Input 0.9.0

crate_release

bevy_enhanced_input is an input manager for Bevy, inspired by Unreal Engine Enhanced Input.

The 0.9 release contains many changes, most notably the component-based API for contexts. The contributors also reworked the documentation, now including a quick-start guide that walks you through the API.

No devlogs this week

Educational

Tutorials, deep dives, and other information on developing Bevy applications, games, and plugins

bevy behave

educational

This tutorial covers bevy-behave: behaviour trees for bevy, with on-demand entity spawning for task nodes.

Bevy Basics: Who Observes the Observer

educational

A "bevy basics" video covering Observers.

Pull Requests Merged This Week
Contributing

Want to contribute to Bevy?

Here you can find two types of potential contribution: Pull Requests that might need review and Issues that might need to be worked on.

How do I contribute?

Pull Requests Opened this week

Issues Opened this week