]> git.lizzy.rs Git - SuperMouseAdventure.git/blobdiff - 2DGame/Assets/Scripts/Background/Parallaxing.cs
parallax effect v1.0.2
[SuperMouseAdventure.git] / 2DGame / Assets / Scripts / Background / Parallaxing.cs
index 79fbe948df82a8d3f3b54a010179b2edaed43d2d..3abc452140ea8a61e2a8c3e5aef5e76a24b26091 100644 (file)
@@ -19,11 +19,11 @@ public class Parallaxing : MonoBehaviour
         lastCameraPosition = cameraTransform.position;
         Sprite sprite = GetComponent<SpriteRenderer>().sprite;
         Texture2D texture = sprite.texture;
-        textureUnitSizeX = texture.width / sprite.pixelsPerUnit;
-        textureUnitSizeY = texture.height / sprite.pixelsPerUnit;
+        textureUnitSizeX = (texture.width / sprite.pixelsPerUnit) * transform.localScale.x;
+        textureUnitSizeY = (texture.height / sprite.pixelsPerUnit) * transform.localScale.y;
     }
 
-    private void LateUpdate()
+    private void FixedUpdate()
     {
         Vector3 deltaMovement = cameraTransform.position - lastCameraPosition;
         transform.position += new Vector3(deltaMovement.x * parallaxEffectMultiplier.x, deltaMovement.y * parallaxEffectMultiplier.y);
@@ -43,8 +43,8 @@ public class Parallaxing : MonoBehaviour
             if (Mathf.Abs(cameraTransform.position.y - transform.position.y) >= textureUnitSizeY)
             {
                 float offsetPositionY = (cameraTransform.position.y - transform.position.y) % textureUnitSizeY;
-                transform.position = new Vector3(transform.position.y, cameraTransform.position.y + offsetPositionY);
+                transform.position = new Vector3(transform.position.x, cameraTransform.position.y + offsetPositionY);
             }
         }
     }
-}
+}
\ No newline at end of file