private void transformupdate()
        {
            var p     = gameObject.transform.DerivedPosition;
            var min   = size * -origin + p;
            var max   = size * (-origin + Vector2.One) + p;
            var pivot = p;

            aabb.SetExtents(min, max);
            aabb.RotateAndContain(pivot, gameObject.transform.DerivedOrientation);
        }