Bevy 0.15 Released, vaporwave shaders, and bottle flipping
2024-12-02
Bevy 0.15 is out now! Check out the release notes and the migration guide. If you want an audiovisual tour of the release, here's a YouTube video as well.
The release candidate process seems to be working well as many crates have already updated to support 0.15 although be sure to save some space to those that haven't, many ecosystem crates are maintained by people in their free time. We won't be listing all of the crates that updated so check in with your dependencies if you're looking to upgrade.
With that we've got some exciting showcases this week, including a vaporwave demo, a throwback to water bottle flipping, and exciting upcoming features for Avian physics.
Showcase
Bevy work from the #showcase channel in Discord and around the internet. Use hashtag #bevyengine.
murmuration simulation
showcase
a murmuration simulation, using Bevy 0.15-rc.3, bevy_spatial, and a low-poly model of a roasted turkey
Vaporwave
showcase
Vaporwave aesthetics in Bevy using shaders. It parses custom gltf attributes generated in Blender to mark visible edges for a more customizable wireframe look, and allows for "solid" wireframe. Check out the YouTube video or the wasm demo.
VARG
showcase
VARG is a love letter to the classic MS-DOS “boomer shooter” genre, with a modern investigative twist. Set in the distant year of 1996, the game is loosely inspired by Brazil's most iconic UFO case.
Varg now has a Steam page.
built-in Transform interpolation for Avian
showcase
Built-in Transform interpolation and extrapolation support for Avian physics, powered by the new bevy_transform_interpolation.
Bottle Flip Dreams
showcase
Bottle Flip Dreams is a throwback to the golden days of bottle flipping. Its a phsyics-based bottle-flipping platformer built with Avian physics. The game has a demo on Itch but the control scheme is meant for mobile devices so I'm looking forward to seeing this one ship on app stores.
Crates
New releases to crates.io and substantial updates to existing projects
Actuate 0.11
crate_release
Actuate is a framework for declarative programming in Rust (with support for Bevy UI and scenes). 0.11 brings more concise syntax, borrowed observers, and more.
bevy-glxf-loader
crate_release
glXF (https://github.com/KhronosGroup/glTF-External-Reference) is an extremely simple JSON-based scene format that essentially just lets you arrange glTFs or other glXF files in a nested hierarchy, name them, and apply transforms to them. bevy-glxf-loader
implements a BEVY_components
extension that lets you add arbitrary components to nodes, so you can use it as an alternative to BSN.
Simple integration testing (adopted) authored by richchurcher
Fix `Single` doc links authored by Jondolf
use wgpu patch 23.0.1 authored by mockersf
`BorderRadius::percent` fix authored by ickshonpe
Revert "Update `sysinfo` version to 0.32.1 (#16517)" authored by cart
Update `sysinfo` version to 0.32.1 authored by GuillaumeGomez
use scale factor for touches in UI focus authored by mockersf
Fix CAS toggle broken by retained render world authored by kristoff3r
AnimatedField and Rework Evaluators authored by cart
Fix CAS shader alpha accessor authored by cart
Clarify that `bevy_app::App.world()` (and mut variant) returns the main `SubApp`'s `World` authored by LikeLakers2
Skip empty spans when updating text buffers authored by cart
Improve ZIndex docs authored by UkoeHB
fix: scroll list is non-scrollable authored by lomirus
Clarify inheritance behavior of required components authored by alice-i-cecile
Fix newline in AnimationEvaluationState docs authored by alice-i-cecile
Reduce iOS cpu usage authored by mockersf
Fix a couple typos authored by rparrett
fix QueryIter::sort_unstable_by authored by Victoronz
Remove duplicated default feature authored by NiklasEi
Fix example build for wasm authored by mockersf
Make `bevy_gltf` compile without `bevy_animation` feature authored by mweatherley
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
ensure all Material2d rendering happen in order authored by mockersf
Elliptical border radius authored by ickshonpe
bugfix: Reflection is not symmetrical authored by pikerpoler
Rename `UiBoxShadowSamples` to `BoxShadowSamples`. authored by ickshonpe
Derivative access patterns for curves authored by mweatherley
Run observers before hooks for `on_replace` and `on_remove` authored by nakedible
Deduplicate register_inherited_required_components authored by Soulghost
one shot system cleanup authored by pemattern
Add PhysicsSystems and AiSystems system sets. authored by andriyDev
Changed GLTF Asset Label to use Strings instead of indexes authored by Hexorg
feat: support for clip children on windows authored by nicholasc
implement EntitySet and iter_many_unique methods authored by Victoronz
bump to 0.16.0-dev authored by atlv24
add `.include_entity()` helper on query iterators authored by Nathan-Fenner
Rust 1.83, allow -> expect (missing_docs) authored by bas-ie
cache ArchetypeId in QueryManyIter and QuerySortedIter authored by Victoronz
Rename `ArgList::push` methods to `with` and add new `push` methods which take `&mut self` authored by atornity
Move required components doc to type doc authored by SpecificProtagonist
bevy_reflect: Remove `PartialReflect::serializable` authored by MrGVSV
Update breakout to use Required Components authored by Mclilzee
Issues Opened this week
Clean up one-shot systems API authored by benfrankel
Support more complicated BoxShadows authored by JMS55
Add `Commands::run_schedule` authored by maniwani
Misleading docs on duplicate required component constructors authored by benfrankel
Allow custom import paths for hot-reloadable shaders authored by Droggelbecher
Correct usage of `ComputeTaskPool` is unclear authored by clubby789
Hook and observer ordering for `on_remove`/`on_replace` should be inverted authored by nakedible
RemovedComponents doesn't work in FixedUpdate authored by mirsella
Ambiguous `BuildChildren` documentation authored by skittles1412
Add a built-in feature to bevy similar to bevy_material_wizard for material skinning authored by ethereumdegen
Strange artifact with PBR `perceptual_roughness` set to 0 authored by Moxinilian
webgl2: Mesh without triangles panics authored by rparrett
Add WS_CLIPCHILDREN support for Windows in bevy_winit authored by nicholasc
iOS mobile windowing-related performance regression and log spam authored by extrawurst
Improve discoverability of bubbling authored by UkoeHB
Scheduling dependency for animation systems relative to `inherit_weights` is probably backwards authored by mweatherley
Use `disqualified` for conflicting system param error B0001 authored by Jondolf
Adding PerspectiveProjection or OrthographicProjection components doesn't get used by Camera3d authored by atlv24
Provide an example of a material shader that uses texture type of uint authored by ethereumdegen
Bevy can't create a window authored by KayZoka
Drag picking event fires on pointer up authored by UkoeHB
Runtime error when using `bevy_winit` feature without explicitly adding `bevy_window` authored by rparrett
bevy_image not available with bevy default-features=false authored by KirmesBude
Add an API to clone worlds authored by alice-i-cecile
Option to toggle/revert to 0.14 behaviour of Fallible SystemParams authored by TheBiochemic