From 21e263d0a46e262297a6f337f5d165a569a553a0 Mon Sep 17 00:00:00 2001 From: Jeroen Schweitzer Date: Mon, 27 Jul 2026 21:39:10 +0200 Subject: [PATCH] =?UTF-8?q?feat(ui):=20stretch=20the=20UI=20to=20the=20win?= =?UTF-8?q?dow=20aspect=20=E2=80=94=20support=20ultrawide=20properly?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Jeroen on a 3440x1440 panel: 'it does not fit the viewport', then 'widescreen users are fully supported so we add stretching ui'. client/project.godot declares a 1920x1080 base viewport with stretch/mode=canvas_items, and stretch/aspect was unset — which defaults to 'keep'. On a 21:9 display Godot letterboxes the entire 16:9 UI inside it, so every screen in the game was pillarboxed, not just the Atlas. Measured: the window came out 2432x1368, exactly 16:9; with aspect=expand it becomes 3440x1368, the full panel width. Worth being explicit that the Atlas was innocent here. It was filling its logical viewport correctly the whole time; that viewport was being boxed inside the monitor. The three genuine Atlas sizing bugs fixed today (the zeroed extent, the legend-column mismatch, the integer-ratio floor) were all real and all separate from this. expand gives every screen more space on a wide display instead of bars, which is the right default for a UI-heavy game with a HUD and implant panels. The tradeoff is that layouts must tolerate a variable aspect ratio rather than assuming 16:9 — accepted deliberately, since widescreen is a supported target. Verified: full client suite 1833 / 1807 passed / 0 failed, cold-parse clean, parse sweep clean across 226 scripts. Co-Authored-By: Claude --- client/project.godot | 1 + 1 file changed, 1 insertion(+) diff --git a/client/project.godot b/client/project.godot index 20704144c..9a3b0dc97 100644 --- a/client/project.godot +++ b/client/project.godot @@ -48,6 +48,7 @@ theme/custom_font="res://assets/fonts/michroma_ui.tres" window/size/viewport_width=1920 window/size/viewport_height=1080 window/stretch/mode="canvas_items" +window/stretch/aspect="expand" [editor_plugins]