using System.Collections.Generic; using UnityEngine; /// /// Move each layer /// Original script: https://pastebin.com/DG5jcAMZ. /// YouTube link: https://youtu.be/MEy-kIGE-lI. /// public class ParallaxBackground : MonoBehaviour { public ParallaxCamera parallaxCamera; List parallaxLayers = new List(); void Start() { if (parallaxCamera == null) parallaxCamera = Camera.main.GetComponent(); if (parallaxCamera != null) parallaxCamera.onCameraTranslate += Move; SetLayers(); } void SetLayers() { parallaxLayers.Clear(); for (int i = 0; i < transform.childCount; i++) { ParallaxLayer layer = transform.GetChild(i).GetComponent(); if (layer != null) { layer.name = "Layer-" + i; parallaxLayers.Add(layer); } } } void Move(float delta) { foreach (ParallaxLayer layer in parallaxLayers) { layer.Move(delta); } } }