private void TryMovePostProcessVolumeAwayFromMainCamera()
        {
            if (Camera.main == null)
            {
                return;
            }
            if (_postProcessVolumeType == null)
            {
                return;
            }
            Component oldVolume = Camera.main.GetComponentInChildren(_postProcessVolumeType);

            if (!oldVolume)
            {
                return;
            }
            GameObject oldObject = oldVolume.gameObject;
            GameObject newObject = Object.Instantiate(oldObject);

            newObject.name = "Post Processing Volume";
            newObject.tag  = "Untagged";
            foreach (Transform child in newObject.transform)
            {
                Object.DestroyImmediate(child.gameObject);
            }

            var newVolume = newObject.GetComponentInChildren(_postProcessVolumeType);

            foreach (Component c in newObject.GetComponents <Component>())
            {
                if ((c == newObject.transform) || (c == newVolume))
                {
                    continue;
                }
                Object.DestroyImmediate(c);
            }

            Object.DestroyImmediate(oldVolume);
            _builder.Repaint();
            Selection.activeGameObject = newObject;
        }