From 1cf13971dcf9b02f8f1996d3a737c0a8fbeddb0e Mon Sep 17 00:00:00 2001 From: ramox81 <184937705+ramox81@users.noreply.github.com> Date: Mon, 12 Oct 2026 12:19:03 +0300 Subject: [PATCH] Keep a centred image background at its device pixel size Co-Authored-By: Claude Opus 5.5 --- src/scene/view/render.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/scene/view/render.rs b/src/scene/view/render.rs index c1e80b531..297f5dffe 100644 --- a/src/scene/view/render.rs +++ b/src/scene/view/render.rs @@ -431,7 +431,12 @@ impl shader::Primitive for Primitive { vp.background_image.as_ref(), vp.environment_image.as_ref(), ); - inner.upload_uniforms(device, queue, &vp.uniforms); + // The scene works in logical pixels; an image background keeps + // its size in device pixels. + let mut uniforms = vp.uniforms; + uniforms.background_image_transform[2] /= scale.max(1e-3); + uniforms.background_image_transform[3] /= scale.max(1e-3); + inner.upload_uniforms(device, queue, &uniforms); // ── Scene-render cache ──────────────────────────────────────── // A pure cursor move — or any frame where the view, geometry,