bevyengine / bevyengine/bevy

Incremental UI stack

Open
#25,151 0 comments 0 reactions 0 assignees View on GitHub
A-Rendering A-UI C-Performance S-Ready-For-Implementation
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 stacking order in `UiStack` is rebuilt every frame. Its implementation as a single ordered list of entities makes its difficult to track local changes.

## What solution would you like?

Update the stacking order incrementally.

Split the stack into local lists that make it easier to track local changes.

Contributor guide

Open the contributing guide

Research direction

Start by locating the `UiStack` implementation and the code that rebuilds its ordered list each frame. Trace how entities are added and removed, then determine how local lists could track those changes without rebuilding the full stack. Done means the stacking order is updated incrementally and the implementation is covered by the relevant UI tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.