Skip to content

render asset recovery#23463

Merged
alice-i-cecile merged 1 commit intobevyengine:mainfrom
atlv24:ad/asset-recovery
Mar 22, 2026
Merged

render asset recovery#23463
alice-i-cecile merged 1 commit intobevyengine:mainfrom
atlv24:ad/asset-recovery

Conversation

@atlv24
Copy link
Copy Markdown
Contributor

@atlv24 atlv24 commented Mar 22, 2026

Objective

Solution

  • We re-extract everything from the main world. This assumes things exist on the main world, which is not actually always true. This is enough for most examples and simple usage to be recoverable, but it's really butting up against bevy_asset deficiencies. The next step to making this truly production grade is asset streaming, which will probably be my next goal.

Testing

  • examples run
  • in combination with the rest of the fixes, render_recovery example works.

@NthTensor NthTensor added A-Rendering Drawing game state to the screen A-Diagnostics Logging, crash handling, error reporting and performance analysis labels Mar 22, 2026
@github-project-automation github-project-automation bot moved this to Needs SME Triage in Rendering Mar 22, 2026
@NthTensor NthTensor added the S-Needs-Review Needs reviewer attention (from anyone!) to move forward label Mar 22, 2026
@alice-i-cecile alice-i-cecile added S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it and removed S-Needs-Review Needs reviewer attention (from anyone!) to move forward labels Mar 22, 2026
@alice-i-cecile alice-i-cecile added this pull request to the merge queue Mar 22, 2026
Merged via the queue into bevyengine:main with commit a5b7810 Mar 22, 2026
47 checks passed
@github-project-automation github-project-automation bot moved this from Needs SME Triage to Done in Rendering Mar 22, 2026
github-merge-queue bot pushed a commit that referenced this pull request Mar 23, 2026
# Objective

- Completes goal and closes #23029
- Culmination of #22761, #23350, #23349, #23433, #23458, #23444, #23459,
#23461, #23463, #22714, #22759, #16481

## Solution

- Add a release note.
- Re-export a wgpu type that you need to match on to handle errors.

## Testing

- cargo run --example render_recovery with all the other PRs merged in.
Press 5 and then V, the app will not crash. Note that D for "destroy
device" will still crash: this is a WGPU problem resolved by
gfx-rs/wgpu#9281.

# Note

I opted not to change the default recovery behavior yet. I believe we
need testing in user projects and just general trodding of this code
path before committing to a new default. It works in a simple example,
it might not work in a complex project. We need to field test this and
likely iterate to really call this ready IMO.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-Diagnostics Logging, crash handling, error reporting and performance analysis A-Rendering Drawing game state to the screen S-Ready-For-Final-Review This PR has been approved by the community. It's ready for a maintainer to consider merging it

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants