bevyengine / bevyengine/bevy

Change tracking on components holding handles to assets don't trigger when the asset handle transitions from the loading to the loaded state

Open
#2,688 4 comments 0 reactions 0 assignees View on GitHub
A-Assets C-Bug
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## Bevy version

0.5

## Operating system & version

Windows 10

## What you did

Have a component hold a `Handle` of some asset. In my case, I'm working on integration with the Synthizer audio library and have Sound components which take in a handle to the `Buffer` of audio to use.

When the asset finishes loading, then the behaviour I wanted is for the sound to e.g start playing

Hence, I have a query on `Changed` to know when Sound components have been changed and logic should be rerun.

## What you expected to happen

Change tracking work for resource handles on components when they transition from loading to loaded states.

## What actually happened

Change tracking doesn't work in this case.

## Additional information

Any additional information you would like to add such as screenshots, logs, etc.

Contributor guide

Open the contributing guide

Research direction

No source file or test is named. Start by reproducing the reported case with a component holding a Handle and a Changed query, then trace the handle's loading-to-loaded transition through change tracking. Done means the query detects that transition so dependent behavior can run.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.