// 27 Slicer // Copyright 2021 Deftly Games // https://slicer.deftly.games/ using UnityEngine; namespace Slicer.Core { /// /// This ScriptableObject is used to save custom configurations to file as an unity asset. /// public sealed class SlicerCustomConfiguration : ScriptableObject { /// /// The name of the configuration file. /// public const string FileName = "SlicerConfiguration"; /// /// The name of the configuration file including the file extension. /// public const string FileFullName = FileName + ".asset"; /// /// The default value of . /// public const bool SkipUnmodifiedSlicesDefault = true; /// /// Optimization - When enabled the slicer will only update if the slicer has been modified. /// It is recommended to leave this enabled but is useful for debugging. /// /// The default value for this setting is set by . [Tooltip("Optimization - When enabled the slicer will only update if the slicer has been modified.\n\nIt is recommended to leave this enabled but is useful for debugging.")] [Header("Optimizations")] public bool SkipUnmodifiedSlices = SkipUnmodifiedSlicesDefault; /// /// The default value of . /// public const bool RefreshSlicesOnUpdateDefault = false; /// /// Optimization - When enabled the slicer will update every frame. /// It is recommended to leave this disabled and call SlicerController.RefreshSlice() when an update is required. /// /// The default value for this setting is set by . [Tooltip("Optimization - When enabled the slicer will update every frame.\n\nIt is recommended to leave this disabled and call 'SlicerController.RefreshSlice()' when an update is required.")] public bool RefreshSlicesOnUpdate = RefreshSlicesOnUpdateDefault; /// /// The default value of . /// public const bool FinalizeOnStartDefault = false; /// /// When enabled all slicers will be finalized immediately after they start at runtime. /// /// The default value for this setting is set by . [Tooltip("When enabled all slicers will be finalized immediately after they start at runtime.")] [Header("Sliced Mesh Finalization")] public bool FinalizeOnStart = FinalizeOnStartDefault; /// /// The default value of . /// public const bool UseFinalizedSlicedMeshComponentDefault = true; /// /// When finalizing sliced meshes also initialize a FinalizedSlicedMesh component that will manage the lifecycle of the sliced mesh. /// /// e.g. The sliced mesh will be destroyed when the `FinalizedSlicedMesh` component is destroyed. /// /// The default value for this setting is set by . [Tooltip("When finalizing sliced meshes also initialize a FinalizedSlicedMesh component that will manage the lifecycle of the sliced mesh.")] public bool UseFinalizedSlicedMeshComponent = UseFinalizedSlicedMeshComponentDefault; /// /// The default value of . /// public const bool SetFinalizedSlicedMeshToBeNoLongerReadableDefault = true; /// /// When finalizing a sliced mesh also set it to be no longer readable. /// /// The default value for this setting is set by . [Tooltip("When finalizing a sliced mesh also set it to be no longer readable.")] public bool SetFinalizedSlicedMeshToBeNoLongerReadable = SetFinalizedSlicedMeshToBeNoLongerReadableDefault; /// /// The default value of . /// public const bool OptimizeFinalizedSlicedMeshDefault = true; /// /// When finalizing a sliced mesh also Optimize it. /// /// The default value for this setting is set by . [Tooltip("When finalizing a sliced mesh also Optimize it.")] public bool OptimizeFinalizedSlicedMesh = OptimizeFinalizedSlicedMeshDefault; } }