
Feronia, Firefly, and Finite Reach
2025-12-01
This week brings a wesl dependency upgrade, and some changes to support the Processing effort.
The DebugName struct also received a new Debug implementation to make it less noisy, some items were made public to better support custom prepasses, and Solari's world cache moved forward.

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


bevy_feronia foliage
showcase
Recently bevy_feronia started using a compute shader to populate the grass instance buffers instead of copying from the game world to the render world every frame and this opened the door to some huge gains.


SDF Collisions
showcase
Custom SDF-based collisions for a future N/N+/N++ clone. The visuals are from bevy-vector-shapes and the SDFs are just used for collision

Avian: Move and Slide
showcase
Avian received a built-in move-and-slide implementation this week. collide-and-slide is an important algorithm for kinematic character controllers originally described in this paper (PDF). The Avian implementation includes a robust multi-plane velocity solver and depenetration.

Maiu Online
showcase
Ability systems work for Maiu Online, an MMORPG, including skill mechanics and vfx.

Computronium
showcase
Computronium is an automation game like Factorio or Satisfactory with an emphasis on computer hardware and networks. Recent updates include:
- Replicated build preview
- Player character with animations
- Advanced snapping
- Basic in-game network connections
- Rack Mk2
- Console
- Player ping system

Physball
showcase
Physball is a game is about rolling a ball around, solving various physics-based puzzles. The game takes inspiration from Portal and Tron, and is playable online at physball.app



Surf Map
showcase
The name "surf" comes from Counter-Strike surfing which takes advantage of physics glitches to float in an unnatural way along inclined planes, gaining significant speed.
This is a surf map for a character controller in Bevy.

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


bevy_firefly
crate_release
bevy_firefly is a 2d lighting crate for bevy with very minimal setup and some pretty fancy features!
Notably bevy_firefly is only compatible with Bevy 0.16 as of this release.

chunky-bevy
crate_release
A chunk management system for Bevy game engine, perfect for voxel games, procedural worlds, and any application that needs spatial partitioning.

bevy_geo_tiles
crate_release
bevy_geo_tiles is a bevy plugin for displaying slippy-map tiles like OpenStreetMap in bevy.
Features:
- OSM/TMS tile loading as bevy sprites
- WGS84 <-> Web Mercator <-> Bevy world coordinate conversion
- Floating/local origin to avoid f32 precision issues
- Disk caching + background tile loading thread
- Optional markers, polylines and polygons

bevy_blockout
crate_release
Updated color handling for bevy_blockout, a triplanar blockout material. Its a material extension, so you get access to all of the StandardMaterial features as well.
The texture uses 1 block as 1 meter, and the small grid is 0.1 meters each, so can be used in development to get a closer estimation of the size of elements.
Solari: Prevent world cache cells from keeping each other alive infinitely authored by JMS55
Fix dead freedesktop desktop-entry spec link. authored by raldone01
Update wesl requirement from 0.1.2 to 0.2.0 authored by mnmaita
fix: return current hit for DragDrop event authored by moe-moe-pupil
ssr fix and add some documents authored by newDINO
Solari: More reactive world cache authored by JMS55
Fix an error in migration guides authored by samoylovfp
Only present when RenderTarget has been written to authored by tychedelia
order rhombus vertices in "hull-order" authored by ChristopherBiscardi
Simplify `Debug` display of `DebugName` authored by chescock
Reduce the flakiness of asset processing tests. authored by andriyDev
Remove unused `num_workgroups` from game_of_life shader authored by shunkie
Trim imports atmosphere shaders authored by hukasu
Fix `..` collapsing with other `..` during AssetPath normalization. authored by andriyDev
Update hashbrown to 0.16.1 authored by Breakdown-Dog
Use `on_timer()` for `update_text()` in the fps_overlay authored by Breakdown-Dog
Remove double space authored by ickshonpe
Improve `ThinSlicePtr` API authored by BD103
Fix entity display not working with padding. authored by PhantomMorrigan
`buffer_dimensions` simplification authored by ickshonpe
Don't render meshes that have prepass disabled to the prepass, even if they have shadows enabled. authored by pcwalton
Make items public that are necessary to add custom prepasses in application code. authored by pcwalton
Tidy up old `SystemCondition` trait hierarchy authored by ItsDoot
Add a UiTransform centered scene to examples/testbed/ui authored by kfc35
Fix solari GI shadow regression authored by JMS55
Solari: Fix energy loss from rgb9e5 light tile packing authored by JMS55
Preallocate more things authored by ItsDoot
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.
Pull Requests Opened this week
Issue 10685 authored by ZackaryRippee
`GridTrack::percent()`: Clarify value range authored by tjamaan
draft of bevy_physics_types authored by lizelive
Resolve `BorderRect` ambiguity authored by ickshonpe
Support `StaticSystemInput` in more places authored by chescock
More flexible SystemInput authored by ecoskey
`BuilderSystem` for easier system builder construction authored by ecoskey
Use u16 indices if possible in mesh primitives authored by beicause
Add options to lower precision/compressed vertex buffer authored by beicause
Pull `Schedules::ignored_scheduling_ambiguities` into a separate resource and avoid unnecessary allocation authored by ItsDoot
New `UiDebugOverlay` features authored by ickshonpe
Document return behavior for child "spawning" commands. authored by newclarityex
`bevy_text` parley migration authored by ickshonpe
Fix documentation links in examples authored by 1ace
Change the Mali GPUs denylist of GPU preprocessing to Culling level authored by beicause








