using System.Collections.Generic; using UnityEngine; [ExecuteInEditMode] 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); } } } //https://www.youtube.com/watch?v=MEy-kIGE-lI