From aaf6e77198007bfa0b6228315a08eac92aff0d35 Mon Sep 17 00:00:00 2001 From: Sofox Date: Sun, 15 Oct 2017 23:32:43 +0100 Subject: Tweaks ParallaxBackground to work better with zoom. Ensures a Parallax Layer with a (1,1) motion scale synchs perfectly with a regular stationary sprite that is outside the ParallaxBackground, regardless of the zoom level and movement of the camera. --- scene/2d/parallax_background.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'scene') diff --git a/scene/2d/parallax_background.cpp b/scene/2d/parallax_background.cpp index 0ddcb7b51b..a13ce6278e 100644 --- a/scene/2d/parallax_background.cpp +++ b/scene/2d/parallax_background.cpp @@ -49,8 +49,8 @@ void ParallaxBackground::_notification(int p_what) { void ParallaxBackground::_camera_moved(const Transform2D &p_transform) { - set_scroll_offset(p_transform.get_origin()); set_scroll_scale(p_transform.get_scale().dot(Vector2(0.5, 0.5))); + set_scroll_offset(p_transform.get_origin() / p_transform.get_scale()); } void ParallaxBackground::set_scroll_scale(float p_scale) { -- cgit v1.2.3