<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/bevy-0-12-cksimk4m0" -->

---
title: Bevy 0.12 | daily.dev
description: Bevy 0.12, the open-source Rust game engine, ships with a major set of new features including optional Deferred Rendering alongside its existing Forward+...
canonical: https://daily.dev/posts/bevy-0-12-cksimk4m0
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Bevy 0.12 | daily.dev
og:description: Bevy 0.12, the open-source Rust game engine, ships with a major set of new features including optional Deferred Rendering alongside its existing Forward+...
og:url: https://daily.dev/posts/bevy-0-12-cksimk4m0
og:image: https://api.daily.dev/og/posts/ckSIMK4M0.png
og:image:alt: Bevy 0.12
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Bevy 0.12

**[Bevy Engine](https://daily.dev/sources/bevy)** · 73 min read · 0 upvotes · 0 comments

## Summary

Bevy 0.12, the open-source Rust game engine, ships with a major set of new features including optional Deferred Rendering alongside its existing Forward+ renderer, PCF shadow filtering for smoother shadows, StandardMaterial light transmission for glass/water/foliage-like materials, and Material Extensions for building custom shaders on top of existing materials. A complete rewrite of the asset system, Bevy Asset V2, adds asset preprocessing, .meta configuration files, multiple asset sources, async I/O, recursive dependency load tracking, and improved hot-reloading. Android apps now support suspend/resume, closing the last major gap in Android support. Automatic batching and instancing of draw commands yields up to 3x frame rate improvements in benchmarks, part of ongoing architectural work toward GPU-driven rendering. A migration guide is provided for upgrading from 0.11.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://bevy.org/news/bevy-0-12>

## Questions this post answers

### What's new in Bevy 0.12 for rendering?

Bevy 0.12 adds optional Deferred Rendering that complements the existing Forward+ renderer, letting each material choose forward or deferred rendering per-instance via the new DefaultOpaqueRendererMethod resource, which defaults to forward. It also introduces PCF (Percentage-Closer Filtering) shadow filtering using the Castano13 method by default, plus a Jimenez14 option, both improving shadow map quality without needing larger textures.

_Track how Bevy's renderer evolves release to release before committing to deferred or forward paths on daily.dev._

### How much faster is rendering with Bevy 0.12's automatic batching?

Automatic batching and instancing of draw commands in Bevy 0.12 gives up to a 200% frame rate increase (3x) in a 2D mesh benchmark with 160,000 entities, and up to 100% (2x) in a 3D 'Many Cubes' benchmark with 160,000 cubes. Entities sharing the same material and mesh are batched automatically, cutting draw call counts significantly on all platforms including WebGL2.

_Benchmark-driven engine upgrades like this are easier to evaluate when tracked on daily.dev._

### What is Bevy Asset V2 and how is it different from the old asset system?

Bevy Asset V2, shipped in Bevy 0.12, is a complete rewrite of the asset system adding asset preprocessing (an 'asset compiler' step), optional .meta configuration files, support for multiple named asset sources (including remote HTTP sources), recursive dependency load tracking via AssetEvent::LoadedWithDependencies, async asset I/O, and cheaper Arc-based asset handles. Most existing user-facing code needs no or minimal changes.

_Migrating asset pipelines gets easier when release deep-dives like this are tracked on daily.dev._

## Similar posts on daily.dev

- [Bevy 0.19](https://daily.dev/posts/bevy-0-19-sk3tvicux) · Lobsters · 19 upvotes · 2 comments
- [Bevy 0.20](https://daily.dev/posts/bevy-0-20-ty9mk0gqd) · Bevy Engine · 3 upvotes · 0 comments
- [Bevy 0.18](https://daily.dev/posts/bevy-0-18-uzl4pmeoc) · Lobsters · 51 upvotes · 2 comments
- [Bevy's Sixth Birthday](https://daily.dev/posts/bevy-s-sixth-birthday-bb5mw85zl) · Lobsters · 1 upvotes · 0 comments

---

Tags: [#bevy](https://daily.dev/tags/bevy), [#game-development](https://daily.dev/tags/game-development), [#rust](https://daily.dev/tags/rust)

[View this post on daily.dev](https://daily.dev/posts/bevy-0-12-cksimk4m0)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Bevy 0.12","url":"https://daily.dev/posts/bevy-0-12-cksimk4m0","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/bevy-0-12-cksimk4m0"},"datePublished":"2026-08-23T12:24:03.904Z","dateModified":"2026-10-15T02:21:31.559Z","description":"Bevy 0.12, the open-source Rust game engine, ships with a major set of new features including optional Deferred Rendering alongside its existing Forward+...","image":"https://media.daily.dev/image/fetch/s--cdS7yU2R--/f_auto,pg_1,q_auto/https://bevy.org/news/bevy-0-12/cover.gif?_a=BAMAMiZY0","thumbnailUrl":"https://media.daily.dev/image/fetch/s--cdS7yU2R--/f_auto,pg_1,q_auto/https://bevy.org/news/bevy-0-12/cover.gif?_a=BAMAMiZY0","isAccessibleForFree":true,"articleSection":"Bevy Engine","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Bevy Engine","logo":"https://media.daily.dev/image/upload/s--oCEd8Bn1--/f_auto,q_auto/v1787487635/logos/bevy-blog?_a=BAMAMicg0","url":"https://daily.dev/sources/bevy"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/bevy-0-12-cksimk4m0","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"bevy,game-development,rust","timeRequired":"PT73M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Bevy Engine","item":"https://daily.dev/sources/bevy"},{"@type":"ListItem","position":3,"name":"Bevy 0.12"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/bevy-0-12-cksimk4m0#faq","mainEntity":[{"@type":"Question","name":"What's new in Bevy 0.12 for rendering?","acceptedAnswer":{"@type":"Answer","text":"Bevy 0.12 adds optional Deferred Rendering that complements the existing Forward+ renderer, letting each material choose forward or deferred rendering per-instance via the new DefaultOpaqueRendererMethod resource, which defaults to forward. It also introduces PCF (Percentage-Closer Filtering) shadow filtering using the Castano13 method by default, plus a Jimenez14 option, both improving shadow map quality without needing larger textures. Track how Bevy's renderer evolves release to release before committing to deferred or forward paths on daily.dev."}},{"@type":"Question","name":"How much faster is rendering with Bevy 0.12's automatic batching?","acceptedAnswer":{"@type":"Answer","text":"Automatic batching and instancing of draw commands in Bevy 0.12 gives up to a 200% frame rate increase (3x) in a 2D mesh benchmark with 160,000 entities, and up to 100% (2x) in a 3D 'Many Cubes' benchmark with 160,000 cubes. Entities sharing the same material and mesh are batched automatically, cutting draw call counts significantly on all platforms including WebGL2. Benchmark-driven engine upgrades like this are easier to evaluate when tracked on daily.dev."}},{"@type":"Question","name":"What is Bevy Asset V2 and how is it different from the old asset system?","acceptedAnswer":{"@type":"Answer","text":"Bevy Asset V2, shipped in Bevy 0.12, is a complete rewrite of the asset system adding asset preprocessing (an 'asset compiler' step), optional .meta configuration files, support for multiple named asset sources (including remote HTTP sources), recursive dependency load tracking via AssetEvent::LoadedWithDependencies, async asset I/O, and cheaper Arc-based asset handles. Most existing user-facing code needs no or minimal changes. Migrating asset pipelines gets easier when release deep-dives like this are tracked on daily.dev."}}]}
```

