bevyengine / bevyengine/bevy

System order reporting and visualization

Open
#2,137 2 comments 8 reactions 0 assignees View on GitHub
A-ECS C-Feature C-Usability D-Complex S-Needs-Design-Doc
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 22h
Merged PRs (30d)
161

Description

## What problem does this solve or what need does it fill?

The order in which systems can execute is critically important for understanding and debugging but this information is typically spread across an entire app.

## What solution would you like?

1. Provide a user-friendly method to log the schedule. This should be human-readable to both ease parsing and make it usable for vision-impaired users.
2. Create a graph visualization from this log.
3. Create an example showing how to use these features.

## What alternative(s) have you considered?

None.

## Additional context

This has been discussed informally repeatedly, but I somehow couldn't find an issue.

https://github.com/jakobhellermann/bevy_mod_debugdump is fantastic prior art.

Other more advanced functionality (e.g. filter by component / resource type, showing which execution order was actually used, filtering by stage or module) can be added on top of this once the initial PR is merged. Those should have separate issues for clarity.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.