public void RegisterPoint(CameraPoint point)
        {
            if (_cameraPoints.Contains(point))
            {
                return;
            }
            _cameraPoints.Add(point);

            if (point.MoveImmediately)
            {
                MoveToPoint(point);
            }
        }
        public void UnRegisterPoint(CameraPoint point)
        {
            if (!_cameraPoints.Contains(point))
            {
                return;
            }
            _cameraPoints.Remove(point);

            if (!_retroactivelyUpdatePoint)
            {
                return;
            }
            if (_cameraPoints.Count == 0)
            {
                return;
            }
            if (point == _activePoint)
            {
                MoveToPoint(_cameraPoints[0]);
            }
        }
 public void MoveToPoint(CameraPoint point)
 {
     CameraTransform.SetPositionAndRotation(point.Position, point.Rotation);
     _activePoint = point;
 }