From d4a9f5a0b0404fc31c70d0eca82356c0ea3060b9 Mon Sep 17 00:00:00 2001 From: Max Litruv Boonzaayer Date: Sun, 20 Jul 2025 06:36:07 +1000 Subject: [PATCH] scaled zooming --- main_scenes/main.gd | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/main_scenes/main.gd b/main_scenes/main.gd index 13afca9..34d39c8 100644 --- a/main_scenes/main.gd +++ b/main_scenes/main.gd @@ -180,8 +180,13 @@ func _input(event): elif editMode and event is InputEventMouseMotion and isPanning: var totalDelta = event.global_position - initialPanPosition - # Calculate new camera offset from initial position plus total movement - cameraOffset = initialCameraOffset - totalDelta + # Scale pan distance based on zoom level for more intuitive panning + # Higher zoom (closer) = less movement, lower zoom (farther) = more movement + var zoomScale = 1.0 / camera.zoom.x + var scaledDelta = totalDelta * zoomScale + + # Calculate new camera offset from initial position plus scaled movement + cameraOffset = initialCameraOffset - scaledDelta # Update camera position immediately var s = get_viewport().get_visible_rect().size