private void CreateBackupAfterApply()
        {
            //GBackup.TryCreateBackup(HISTORY_PREFIX, instance.SplineCreator.GroupId, GCommon.FoliageInstancesResourceFlags);
            List <GStylizedTerrain> terrains = GSplineToolUtilities.OverlapTest(instance.SplineCreator.GroupId, instance.SplineCreator);

            GBackupInternal.TryCreateAndMergeBackup(HISTORY_PREFIX, terrains, GCommon.FoliageInstancesResourceFlags, true);
        }
        private void CreateAfterStampBackup()
        {
            //GBackup.TryCreateBackup(HISTORY_PREFIX, instance.GroupId, GCommon.HeightMapAndFoliageResourceFlags);
            List <GStylizedTerrain> terrains = GStampToolUtilities.CheckOverlap(instance.GroupId, instance.Rect);

            GBackupInternal.TryCreateAndMergeBackup(HISTORY_PREFIX, terrains, GCommon.HeightMapAndFoliageResourceFlags, true);
        }
        private void CreateAfterStampBackup()
        {
            string historyPrefix =
                instance.Channel == GTextureStampChannel.AlbedoMetallicSmoothness ? HISTORY_PREFIX_COLOR :
                instance.Channel == GTextureStampChannel.Splat ? HISTORY_PREFIX_TEXTURE : "Unknown Action";
            List <GTerrainResourceFlag> resourcesFlag = new List <GTerrainResourceFlag>();

            if (instance.Channel == GTextureStampChannel.AlbedoMetallicSmoothness)
            {
                resourcesFlag.Add(GTerrainResourceFlag.AlbedoMap);
                resourcesFlag.Add(GTerrainResourceFlag.MetallicMap);
            }
            else if (instance.Channel == GTextureStampChannel.Splat)
            {
                resourcesFlag.Add(GTerrainResourceFlag.SplatControlMaps);
            }

            //GBackup.TryCreateBackup(historyPrefix, instance.GroupId, resourcesFlag);
            List <GStylizedTerrain> terrains = GStampToolUtilities.CheckOverlap(instance.GroupId, instance.Rect);

            GBackupInternal.TryCreateAndMergeBackup(historyPrefix, terrains, resourcesFlag, true);
        }
        private void CreateBackupAfterApplyPath()
        {
            string historyPrefix =
                instance.Channel == GPathPainter.PaintChannel.AlbedoAndMetallic ? HISTORY_PREFIX_ALBEDO_METALLIC :
                instance.Channel == GPathPainter.PaintChannel.Splat ? HISTORY_PREFIX_SPLAT : "Unknown Action";
            List <GTerrainResourceFlag> resourceFlag = new List <GTerrainResourceFlag>();

            if (instance.Channel == GPathPainter.PaintChannel.AlbedoAndMetallic)
            {
                resourceFlag.Add(GTerrainResourceFlag.AlbedoMap);
                resourceFlag.Add(GTerrainResourceFlag.MetallicMap);
            }
            else if (instance.Channel == GPathPainter.PaintChannel.Splat)
            {
                resourceFlag.Add(GTerrainResourceFlag.SplatControlMaps);
            }

            //GBackup.TryCreateBackup(historyPrefix, instance.SplineCreator.GroupId, resourceFlag);
            List <GStylizedTerrain> terrains = GSplineToolUtilities.OverlapTest(instance.SplineCreator.GroupId, instance.SplineCreator);

            GBackupInternal.TryCreateAndMergeBackup(historyPrefix, terrains, resourceFlag, true);
        }