google / bigwheels

BigWheels is a cross-platform, API agnostic framework to build graphics applications.
Apache License 2.0
94 stars 37 forks source link

[NFC] Simplify window size handling #438

Open Keenuts opened 9 months ago

Keenuts commented 9 months ago

This change is the first requirement for cleaning up knobs initialization: BigWheels has settings, which are used to initialize default values, which in turn are used to initialize knobs. But then those settings becomes RW values used at runtime (like window.width, window.height).

The ultimate goal is to sanitize this whole initialization step, and only rely on knobs.

This first commit removes window.width and window.height from the settings, and rely on the Window class to store its size. This should be a NFC.

Tested on linux, android and Windows. The swapchain is only resized once on window size change (checked on windows, setting the window to fullscreen etc)

Keenuts commented 7 months ago

Rebased on main to fix the conflicts