Untitled

 avatar
unknown
plain_text
a year ago
1.2 kB
3
Indexable
    public IEnumerator IECalculate()
    {
        Camera cam = Camera.main;

        shapeParent.transform.position = Vector3.zero;

        Canvas.ForceUpdateCanvases();

        yield return new WaitForFixedUpdate();

        var _bounds = CalculateEncapsulatedBounds(shapeParent.gameObject);

        var topLimit = topNeo.transform.position.y;
        var botLimit = botNeo.transform.position.y;
        var rightLimit = rightNeo.transform.position.x;
        var leftLimit = leftNeo.transform.position.x;

        var objectCenter = _bounds.center.y;

        var objectMaxY = _bounds.max.y;
        var objectMinY = _bounds.min.y;

        var objectMaxX = _bounds.max.x;
        var objectMinX = _bounds.min.x;

        var offset = -objectCenter + (topLimit + botLimit) / 2f;

        shapeParent.transform.position = new Vector2(0f, offset);

        var top = objectMaxY - topLimit + offset;
        var bot = -(objectMinY - botLimit + offset);
        var right = objectMaxX - rightLimit;
        var left = -(objectMinX - leftLimit);

        var max = Mathf.Max(top, bot, right, left) / cam.aspect;

        cam.orthographicSize = Mathf.Max(15, cam.orthographicSize + max);
    }
Editor is loading...
Leave a Comment