public YAMLNode ExportYAML(IExportContainer container)
        {
            YAMLMappingNode node = new YAMLMappingNode();

            node.AddSerializedVersion(ToSerializedVersion(container.ExportVersion));
            node.Add(HeightsName, Heights.ExportYAML(true));
            if (HasHoles(container.ExportVersion))
            {
                node.Add(HolesName, Holes.ExportYAML());
                node.Add(HolesLODName, HolesLOD.ExportYAML());
                node.Add(EnableHolesTextureCompressionName, EnableHolesTextureCompression);
            }
            if (HasShifts(container.ExportVersion))
            {
                node.Add(ShiftsName, Shifts.ExportYAML(container));
            }

            node.Add(PrecomputedErrorName, PrecomputedError.ExportYAML());
            node.Add(MinMaxPatchHeightsName, MinMaxPatchHeights.ExportYAML());
            if (HasDefaultPhysicMaterial(container.ExportVersion))
            {
                node.Add(DefaultPhysicMaterialName, DefaultPhysicMaterial.ExportYAML(container));
            }

            if (HasWidth(container.ExportVersion))
            {
                node.Add(WidthName, Width);
                node.Add(HeightName, Height);
            }
            if (HasThickness(container.ExportVersion))
            {
                node.Add(ThicknessName, Thickness);
            }
            if (HasResolution(container.ExportVersion))
            {
                node.Add(ResolutionName, Resolution);
            }

            node.Add(LevelsName, Levels);
            node.Add(ScaleName, Scale.ExportYAML(container));
            return(node);
        }