![]() # Objective Because `prepare_assets::<T>` had a mutable reference to the `RenderAssetBytesPerFrame` resource, no render asset preparation could happen in parallel. This PR fixes this by using an `AtomicUsize` to count bytes written (if there's a limit in place), so that the system doesn't need mutable access. - Related: https://github.com/bevyengine/bevy/pull/12622 **Before** <img width="1049" alt="Screenshot 2025-02-17 at 11 40 53 AM" src="https://github.com/user-attachments/assets/040e6184-1192-4368-9597-5ceda4b8251b" /> **After** <img width="836" alt="Screenshot 2025-02-17 at 1 38 37 PM" src="https://github.com/user-attachments/assets/95488796-3323-425c-b0a6-4cf17753512e" /> ## Testing - Tested on a local project (with and without limiting enabled) - Someone with more knowledge of wgpu/underlying driver guts should confirm that this doesn't actually bite us by introducing contention (i.e. if buffer writing really *should be* serial). |
||
---|---|---|
.. | ||
src | ||
Cargo.toml | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md |