Detect when all assets are loaded
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 16h
- Merged PRs (30d)
- 171
Description
## What problem does this solve or what need does it fill?
In Bevy's examples a lot of work is required to manually track assets has finished loading:
- https://bevy.org/examples/assets/multi-asset-sync/
- https://bevy.org/examples/games/loading-screen/
I'm also working on a [screenshot testing framework](https://github.com/azureblaze/bevy_mod_screenshot_test) which ideally should let users wait for all members of the scene to be spawned in before a screenshot is taken.
While screenshot tests are more niche and can afford to do hacky things like waiting for fixed time, the current way to implement a loading screen seems very complicated and hard to scale.
## What solution would you like?
Some way to tell when the AssetServer/other related systems are not doing anything anymore.
## What alternative(s) have you considered?
require users to place asset barriers everywhere
Contributor guide
Research direction
Start by reading AssetServer and the related asset-loading systems, then compare the multi-asset-sync and loading-screen examples linked in the issue. Determine how the engine could expose an idle state without requiring asset barriers; done means users can reliably tell when the relevant assets and scene members are ready.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 38/100