mirror of
https://github.com/storytold/lightcraft.git
synced 2026-10-29 12:37:51 -06:00
The loupe read the GPU's texture limit from the frame's raw input (`i.raw.max_texture_side`). A native host (egui-winit) reports it in the first frame's input only, so from the second frame on the loupe fell back to 2048: every window render of a zoomed view was cut to 2048 x 2048 px, and on a canvas wider than that (HiDPI, 4K, a large window) the strips beside it showed the magnified whole-frame render. The whole-frame render and the second-window and compare renders were capped the same way. Read the limit egui keeps (`InputState::max_texture_side`) instead. The headless host reported the limit in every frame, which is why no test saw this: it now reports it once (and again when it changes), as a window does. Two regression tests: the limit outlives the frame it was reported in, and at 1:1 on a 2600 px canvas the window covers the canvas. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>