mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-08-02 02:41:11 -04:00
The auth screen decoded its background on the frame it first appeared: a 1408x768 PNG in a 2.4MB file, which is 2.4MB of zlib inflate plus the GPU upload, measured at ~190ms. Start the decode on a worker when the screen first renders and upload on whichever frame it lands; the existing descriptor-set guard already skips drawing the background until then, so the screen simply appears without it for a moment. The GPU half stays on the main thread, since that is where it has to be — loadBackgroundImage becomes uploadBackgroundImage and takes pixels the worker already decoded. Honest note on value: this is a static screen, so the hitch was hard to perceive. The loading screen decodes its own image the same way and is left alone, being a screen that is already a wait.