Пример #1
0
        // Start is called before the first frame update
        protected void Start()
        {
            _parallaxDatas = new Dictionary <Transform, ParallaxData>();
            if (parallaxDictionary != null && _parallaxDatas != null)
            {
                foreach (var element in parallaxDictionary)
                {
                    Transform parent = element.Key;

                    if (parent != null)
                    {
                        var children = parent.GetComponentsInHierarchy <Transform>(true);

                        if (children == null || children.Count == 0)
                        {
                            children = ListExtend.CreateList(parent);
                        }

                        foreach (var tr in children)
                        {
                            if (tr == null)
                            {
                                continue;
                            }

                            var auxSpriteRenderer = tr.GetComponent <SpriteRenderer>();

                            ParallaxData data = new ParallaxData(tr.position, auxSpriteRenderer.bounds.size.x, element.Value, auxSpriteRenderer);
                            data.distance = CalculateDistance(data);
                            _parallaxDatas.Add(tr, data);
                        }
                    }
                }
            }
        }
Пример #2
0
 public static bool IsEncapsulated(this Bounds @this, Bounds container, Vector3 translationVector = default)
 {
     return(IsEncapsulated(@this, ListExtend.CreateList(container), translationVector));
 }