// 27 Slicer // Copyright 2021 Deftly Games // https://slicer.deftly.games/ using UnityEditor; using UnityEngine; namespace Slicer.Core { /// /// This ScriptableObject is used to save export configurations to file. /// public sealed class SlicerExportConfiguration : ScriptableObject { /// /// The default value of . /// public const string ExportPathPatternDefault = @"{meshAssetFilePath}\{meshAssetFileName}_{meshName}_{sliceType}.{ext}"; /// /// The string pattern to use to determine output file of the exported mesh asset. /// /// The default value for this setting is set by . public string ExportPathPattern = ExportPathPatternDefault; /// /// The default value of . /// public const bool RecursivelySearchDefault = false; /// /// Should the exporter recursively search for sliced models to export. /// /// The default value for this setting is set by . public bool RecursivelySearch = RecursivelySearchDefault; /// /// The default value of . /// public const bool FinalizeSlicesDefault = false; /// /// Should the exporter recursively search for sliced models to export. /// /// The default value for this setting is set by . public bool FinalizeSlices = FinalizeSlicesDefault; /// /// The default value of . /// public const bool SaveProjectAfterExportDefault = true; /// /// Should the exporter save the project after it has completed exporting. /// /// The default value for this setting is set by . public bool SaveProjectAfterExport = SaveProjectAfterExportDefault; /// /// The default value of . /// public const bool SaveAsNewAssetDefault = true; /// /// Should the exporter instantiate the mesh as a new asset when exporting. /// /// The default value for this setting is set by . public bool SaveAsNewAsset = SaveAsNewAssetDefault; /// /// The default value of . /// public const bool ExportSlicedMeshDefault = true; /// /// Should meshes be exported. /// /// The default value for this setting is set by . public bool ExportSlicedMesh = ExportSlicedMeshDefault; /// /// The default value of . /// public const bool ExportSlicedCollidersDefault = true; /// /// Should colliders be exported. /// /// The default value for this setting is set by . public bool ExportSlicedColliders = ExportSlicedCollidersDefault; /// /// The default value of . /// public const bool OptimizeExportedMeshDefault = true; /// /// Should the exported mesh be optimized. /// /// The default value for this setting is set by . public bool OptimizeExportedMesh = OptimizeExportedMeshDefault; /// /// The default value of . /// public const bool InheritMeshCompressionSettingsDefault = true; /// /// Should the Compression Settings from the original mesh be transfered to the exported mesh. /// /// The default value for this setting is set by . public bool InheritMeshCompressionSettings = InheritMeshCompressionSettingsDefault; /// /// The default value of . /// public const ModelImporterMeshCompression ExportedMeshCompressionDefault = ModelImporterMeshCompression.Off; /// /// The compression setting for exported mesh. /// /// This setting is active only when is set to `false` /// /// The default value for this setting is set by . public ModelImporterMeshCompression ExportedMeshCompression = ExportedMeshCompressionDefault; } }