bevyengine / bevyengine/bevy

Automatically prevent white frame when App is first initialized

Open
#9,771 2 comments 0 reactions 0 assignees View on GitHub
A-Rendering A-Windowing C-Bug D-Complex
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

> Nice, why aren't we doing this by default in every app?

Doing this directly in engine, a few things would have to be checked:
- is that empty frame happening on all OS? it seems visibility controls only exists on Windows, macOS and x11. and iOS? no idea what it does there
- is it happening on all windows, or only the first one created at application start
- is there a way to check if the texture is ready to be rendered to instead of adding a delay

_Originally posted by @mockersf in https://github.com/bevyengine/bevy/issues/9692#issuecomment-1711905122_

This is a bit of a nuisance, and it would be good to fix at the engine level. But as the discussion in the linked PR says, there's a bit more subtlety there.

Once this is fixed globally, #9692 should be reverted in the same PR.

Contributor guide

Open the contributing guide

Research direction

Start by reading linked issue #9692 and its discussion, then investigate the engine's application and window initialization paths across the operating systems mentioned. Determine whether the white frame is limited to the first window and whether readiness can be detected; done means a globally appropriate fix is established and #9692 can be reverted in the same change.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.