This Week in Bevy

What happened this week in the Bevy Engine ecosystem

Links

Polder building, Jarl Playtests, and Hanabi Particles

2024-11-18

This week in Bevy we see Jarl start playtesting, further progress on Polder's building mechanics, and more.

We also see the release of some interesting new particle features in Hanabi, including mesh particles and improve trails.

The CLI working group has also produced the first release of a Bevy linter, which is possibly a great addition for sharing patterns and optimizations for the community.

bevy_lint

You might be familiar with cargo clippy which is a collection of lints to catch common mistakes and improve your Rust code. Clippy can be great, but projects like Bevy have specific usage patterns that would benefit from different rules.

On that subject, the CLI working group has released bevy_lint, a collection of lints to check for Bevy-specific footguns and optimizations, as well as enforce project-wide restrictions and standards. This is a work-in-progress linter that has rough edges, but the goal is to upstream it into the Bevy organization at some point.

Check out the release notes for instructions and how to use it and check out the talk this Thursday at the 7th unofficial Bevy meetup


This week the Merge Train is headed by François! The Merge Train is a maintainer-level view into active PRs, both those that are merging and those that need work.

Showcase

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

fuild simulation

Fluid Simulation

showcase

A quick raymarched fluid simulation experiment. The source code is going to be cleaned up before being published.

logic circuit simulator

logic circuit simulator

showcase

A logic circuit simulator built on a livestream. It uses Bevy and egui, with egui-snarl powering the node graph.

laser

laser pointer cat toy

showcase

An iOS laser pointer style cat toy you can control with any other iOS device. It uses Apple’s Multipeer Connectivity for discovery and transport and includes some Swift FFI work.

card game

0.15 Card Game Port

showcase

A port of a multiplayer card game from Godot to the 0.15 release candidate.

conveyor belt

Conveyors and boxes

showcase

Placing signs, items, and conveyors, then watching boxes run along the conveyor.

bevy_easy_portals

bevy_easy_portals demo

showcase

A preview of a new bevy_easy_portals demo, including being able to walk through the portal.

wave function collapse

Wave function collapse

showcase

An implementation of wave function collapse for 2d world generation in a multiplayer game powered by bevy_ecs_ldtk, avian2d and a custom WFC algorithm implementation.

velocity visulatization

linear and angular velocity visualization

showcase

Animating custom properties and visualizing linear and angular velocities.

motion matching

bevy_motion_matching

showcase

A work-in-progress motion matching system. This shows a visualization tool trajectory matching a user's predicted trajectory and the best match trajectory from the Mixamo dataset.

hallwayshallways

Hallways

showcase

A new map was added to this game (which we've covered before) and the human enemies now have behaviors and animations.

verkaboot tessellate

Verkaboot Tessellate

showcase

Verkaboot Tessellate is a hi-res tileset creation tool in the early stages of development. A brush engine powered by compute shaders has already been implemented.

jarl playtest

Jarl Playtest

showcase

Jarl, a fantasy colony builder, has entered playtesting! This video shows off a number of the features of the game including various building mechanics.

polderspolders building selectionpolders building selection

Polder

showcase

Placing buildings on grids in a tiny planet city builder called Polder

3d platformer vleue navigator

3d platformer

showcase

New features added to this 3D platformer include using vleue_navigator to power a navigation mesh and elevators.

inventory poc

Inventory PoC

showcase

An items/inventory proof of concept complete with drag-and-drop functionality.

i18n

i18n integration + dynamic font loading

showcase

A concept project demonstrating i18n integration and dynamic font loading.

trebuchet

Siege

showcase

A trebuchet made using Avian3d, the goal is to be as realistic as possible. Video available on YouTube

Crates

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

bevy_simple_i18n

crate_release

Bindings to the rust-i18n crate and is an opinionated approach to localization.

This crates supports Bevy 0.15-rc.3.

Bevy Hanabi v0.13.0

crate_release

bevy_hanabi is a GPU particle system plugin.

0.13 is a release for Bevy 0.14 and brings official wasm support, arbitrary mesh particles, texture sampling, and a Trails and Ribbons API rewrite.

This version is for Bevy 0.14 and a different version will be released for Bevy 0.15 support.

bevy_novel

crate_release

A port of Ren'Py scenario parser and a Bevy implementation. Ren'Py is a visual novel engine

bevy_channel_trigger

crate_release

Send events via a channels from anywhere (eg. web-dom, c-ffi) to Bevy Observers.

ambientcg

bevy_ambient_cg

crate_release

An asset loader to import materials from ambientcg.

No devlogs this week

Educational

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

Turn based mechanics with Bevy's one-shot systems

educational

An explanation of how to power turn-based games with one-shot systems and the command pattern.

Bevy Channel Trigger

educational

A short post about the new bevy_channel_trigger crate (mentioned in this issue) and stitching crossbeam together with 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