P12.3: candy clear colour for palette cohesion (sx / iOS)

Retune the GPU clear colour on both render paths (Metal on iOS, GL on
desktop) from the old dark navy (0.05,0.06,0.10) to a candy-lavender tone
sampled from the regenerated background's mid-gradient. The dark navy was
the one off-palette constant left after P12.1/P12.2; the background art
covers the full drawable in steady state, so it only ever surfaced as a
pre-load flash / potential dark seam. A single shared CLEAR_R/G/B keeps the
two paths from diverging.

Refresh the stale full-board goldens (p4_board, p9_polish), which still
showed the pre-P12.2 dark HUD, to the current cohesive candy palette.
This commit is contained in:
swipelab
2026-06-05 22:05:01 +03:00
parent 9a7a2003ef
commit 5e78d25d8b
3 changed files with 9 additions and 2 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

After

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

After

Width:  |  Height:  |  Size: 3.2 MiB

11
main.sx
View File

@@ -31,6 +31,13 @@ strlen :: (s: *u8) -> usize #foreign libc "strlen";
// as a snapshot, so the on-screen layout matches that golden gem-for-gem.
BOARD_SEED :: 1337;
// Cleared-surface tone for both GPU paths (Metal on iOS, GL on desktop). Tuned to
// the candy background's mid-gradient lavender so the clear never reads as a dark
// seam past the background art; one source keeps the two paths from diverging.
CLEAR_R :f32: 0.765;
CLEAR_G :f32: 0.733;
CLEAR_B :f32: 0.933;
g_plat : Platform = ---;
g_pipeline : *UIPipeline = ---;
g_delta_time : f32 = 0.016;
@@ -230,13 +237,13 @@ frame :: () {
} else if g_metal_gpu.pixel_w != g_uikit_plat.pixel_w or g_metal_gpu.pixel_h != g_uikit_plat.pixel_h {
g_metal_gpu.resize(g_uikit_plat.pixel_w, g_uikit_plat.pixel_h);
}
clear : ClearColor = .{ r = 0.05, g = 0.06, b = 0.10, a = 1.0 };
clear : ClearColor = .{ r = CLEAR_R, g = CLEAR_G, b = CLEAR_B, a = 1.0 };
if !g_metal_gpu.begin_frame(clear) { return; }
g_pipeline.tick();
g_metal_gpu.end_frame(fc.target_present_time);
} else {
glViewport(0, 0, fc.pixel_w, fc.pixel_h);
glClearColor(0.05, 0.06, 0.10, 1.0);
glClearColor(CLEAR_R, CLEAR_G, CLEAR_B, 1.0);
glClear(GL_COLOR_BUFFER_BIT);
g_pipeline.tick();
}