Bevy 0.11 ships with 166 contributors and 522 pull requests, bringing major rendering upgrades: Screen Space Ambient Occlusion, Temporal Anti-Aliasing, Robust Contrast Adaptive Sharpening, morph target animation support, parallax mapping, and skybox rendering. WebGPU support expands, shader imports move to a naga_oil module-based system, and the ECS scheduling API is overhauled with Schedule-First APIs replacing confusing Base Sets. Additional highlights include UI borders, CSS-style grid layout, faster UI batching, reworked ECS-based audio APIs, gizmo immediate-mode rendering, gamepad rumble support, a new default tonemapping method (TonyMcMapface), stable TypePath, and numerous reflection and ergonomics improvements. A migration guide is provided for upgrading from 0.10.

46m read timeFrom bevy.org
Post cover image
Table of contents
Screen Space Ambient Occlusion #Temporal Anti-Aliasing #Robust Contrast Adaptive Sharpening #Morph Targets #Parallax Mapping #Skyboxes #WebGPU Support #Improved Shader Imports #UI Node Borders #Grid UI Layout #Schedule-First ECS APIs #Nested System Tuples and Chaining #Gizmos #ECS Audio APIs #Global Audio Volume #Resource Support in Scenes #Scene Filtering #Default Font #UI Texture Atlas Support #Gamepad Rumble API #New Default Tonemapping Method #EntityRef Queries #Screenshot API #RenderTarget::TextureView #Improved Text Wrapping #Faster UI Render Batching #Better Reflect Proxies #FromReflect Ergonomics #Deref Derive Attribute #Simpler RenderGraph Construction ##[reflect(default)] on Enum Variant Fields #Delayed Asset Hot Reloading #Custom glTF Vertex Attributes #Stable TypePath #run_if for Tuples of Systems #Has Queries #Derive Event #Cubic Curve Example #Size Constraints Example #Display and Visibility Example #No More Bors! #New CI Jobs #What's Next? #Support Bevy #Contributors #Full Changelog #

Questions this post answers

What are the main new rendering features in Bevy 0.11?

Bevy 0.11 adds Screen Space Ambient Occlusion (SSAO), Temporal Anti-Aliasing (TAA), Robust Contrast Adaptive Sharpening (RCAS), morph target animation, parallax mapping with depth maps, and built-in skybox support via a Skybox component. SSAO and TAA currently only work on Vulkan, DirectX12, and Metal, with WebGPU support planned later. Track engine releases like this on daily.dev when planning a Bevy rendering upgrade.

How does Bevy 0.11 change the ECS system scheduling API compared to 0.10?

Bevy 0.11 introduces Schedule-First APIs, replacing the confusing Base Sets from 0.10 with a single add_systems(Schedule, systems) call. Base Sets like CoreSet::Update become plain schedules like Update, there is no more implicit default scheduling, and nested system tuples plus chain() now support arbitrary nesting for expressive ordering. Developers upgrading Bevy apps can check migration details like this on daily.dev before touching scheduler code.

How do I play and control audio in Bevy 0.11 using the new ECS audio API?

Audio playback is represented as an Entity with an AudioBundle component instead of a Resource-based AudioSink handle. Spawn an entity with AudioBundle containing the loaded source and PlaybackSettings, then query for the AudioSink component to pause or otherwise control playback, using PlaybackMode variants Once, Loop, Despawn, or Remove to manage lifecycle. See changes like this on daily.dev before migrating audio code to a new Bevy version.

1 Impression