Scylla Framework
  • API Reference
Search Results for

    Show / Hide Table of Contents
    • Scylla.Core
      • Char
      • FileLog
      • ILogReceiver
      • IScyllaDependencyProvider
      • Log
      • LogCategory
      • LogEntry
      • LogFileFormat
      • LogLevel
      • Num
      • ScyllaAAMode
      • ScyllaAAQuality
      • ScyllaBootstrap
      • ScyllaCore
      • ScyllaCore.Meta
      • ScyllaDependencyInfoData
      • ScyllaMaterialSurface
      • ScyllaRenderPipeline
      • ScyllaShadowResolution
      • Str
      • TextAlignment
      • UnityConsoleLog
    • Scylla.Core.Attributes
      • AttributeValidator
      • CompareOperator
      • ConditionalAttributeBase
      • DisableIfAttribute
      • DisplayNameAttribute
      • EnableIfAttribute
      • FoldoutAttribute
      • FormerlySerializedAsAttribute
      • GroupAttribute
      • HideIfAttribute
      • HideInFilterWindowAttribute
      • HorizontalLineAttribute
      • InfoBoxAttribute
      • InfoType
      • LayerFieldAttribute
      • MinMaxRangeAttribute
      • MonoTextAreaAttribute
      • NotEmptyAttribute
      • NotNullAttribute
      • ReadOnlyAttribute
      • ReflectedTypeAttribute
      • RequiredAttribute
      • SceneFieldAttribute
      • ShowIfAttribute
      • SortingLayerFieldAttribute
      • TagFieldAttribute
      • TitleAttribute
      • ValidateInputAttribute
      • ValidationException
    • Scylla.Core.Config
      • ConfigFileManager
      • ConfigurationRegistry
      • ConfigurationSlotAttribute
      • ConfigurationValidationResult
      • ConsoleLoggingSettings
      • FileLogFormattingSettings
      • FileLoggingSettings
      • IConfigurationRegistry
      • ScyllaConfiguration
      • ScyllaCoreConfiguration
      • ScyllaEventConfiguration
      • ScyllaLoggerConfiguration
      • ValidationSeverity
    • Scylla.Core.Editor
      • CalendarDefinitionEditor
      • ClockDefinitionEditor
      • ColorGradientAssetEditor
      • ColorGradientReducer
      • ColorPaletteAssetEditor
      • DebugCameraEditor
      • DebugEventMonitor
      • DependencySourceType
      • DependencyStatus
      • EventFilterCategory
      • EventLogEntry
      • GameViewCapture
      • IScyllaShaderProvider
      • ScyllaAboutWindow
      • ScyllaBootstrapEditor
      • ScyllaCard
      • ScyllaConfigurationEditorBase
      • ScyllaCopyMenu
      • ScyllaCoreConfigurationEditor
      • ScyllaCoreDependencyProvider
      • ScyllaCoreShaderProvider
      • ScyllaDebugWindow
      • ScyllaDependencyDetector
      • ScyllaDependencyGraphElement
      • ScyllaDependencyInfo
      • ScyllaDescriptionBox
      • ScyllaEditorAssetUtil
      • ScyllaEditorAssets
      • ScyllaEditorBase
      • ScyllaEditorClipboard
      • ScyllaEditorColors
      • ScyllaEditorConstants
      • ScyllaEditorIconNames
      • ScyllaEditorLogScope
      • ScyllaEditorPrefs
      • ScyllaEditorStyles
      • ScyllaEditorTheme
      • ScyllaEditorUSSClasses
      • ScyllaEventConfigurationEditor
      • ScyllaFontCharacterExtractorWindow
      • ScyllaGettingStartedWindow
      • ScyllaIconPreview
      • ScyllaLoggerConfigurationEditor
      • ScyllaLogoElement
      • ScyllaMenuItems
      • ScyllaModuleEditor
      • ScyllaModuleStatusIndicator
      • ScyllaModuleWindow
      • ScyllaNameField
      • ScyllaPanel
      • ScyllaPresetSelector
      • ScyllaSceneConfigurationEditor
      • ScyllaScheduler
      • ScyllaSearchField
      • ScyllaSearchablePopup
      • ScyllaSearchablePopup.Item
      • ScyllaSettingsProvider
      • ScyllaSetupWizard
      • ScyllaShaderInclusionBuildProcessor
      • ScyllaSplitView
      • ScyllaStatusBar
      • ScyllaTabBar
      • ScyllaTimeConfigurationEditor
      • ScyllaToolWindowBase
      • ScyllaToolbar
      • ScyllaValidatedTextField
      • ScyllaWizardWindowBase
      • ScyllaWizardWindowBase.WizardLayout
      • ScyllaWizardWindowBase.WizardStepDef
    • Scylla.Core.Editor.Attributes
      • AttributeReflectionCache
      • ConditionalDrawerBase
      • DisableIfDrawer
      • EnableIfDrawer
      • FoldoutDrawer
      • HideIfDrawer
      • HorizontalLineDrawer
      • InfoBoxDrawer
      • LayerFieldDrawer
      • MinMaxRangeDrawer
      • MonoTextAreaDrawer
      • ReadOnlyDrawer
      • RequiredDrawer
      • SceneFieldDrawer
      • SerializedPropertyExtensions
      • ShowIfDrawer
      • SortingLayerFieldDrawer
      • TagFieldDrawer
      • TitleDrawer
    • Scylla.Core.Editor.Drawers
      • DoubleRangeDrawer
      • FloatRangeDrawer
      • IntRangeDrawer
    • Scylla.Core.Editor.Util.UI.Layout
      • ScyllaUIEdgeInsetsDrawer
      • ScyllaUILayoutMenuItems
      • ScyllaUILengthDrawer
    • Scylla.Core.Events
      • IScyllaEventBus
      • ScyllaEvent
      • ScyllaEventBus
      • ScyllaEventPriority
      • ScyllaEventSubscription
      • ScyllaEvents
      • ScyllaFrameworkInitializedEvent
      • ScyllaFrameworkShutdownEvent
      • ScyllaModuleShutdownEvent
      • ScyllaModuleStartedEvent
    • Scylla.Core.Modules
      • IScyllaModule
      • IScyllaModuleManager
      • ScyllaModule
      • ScyllaModuleDependency
      • ScyllaModuleDependencyType
      • ScyllaModuleException
      • ScyllaModuleID
      • ScyllaModuleInfo
      • ScyllaModuleManager
      • ScyllaModulePlacement
      • ScyllaModuleState
    • Scylla.Core.Scenes
      • HygieneOverride
      • SceneLoadOperation
      • SceneLoadRunner
      • SceneLoadState
      • ScyllaActiveSceneChangedEvent
      • ScyllaSceneConfiguration
      • ScyllaSceneLoadOptions
      • ScyllaSceneLoadProgressEvent
      • ScyllaSceneLoadedEvent
      • ScyllaSceneManager
      • ScyllaSceneUnloadedEvent
      • ScyllaSceneWillLoadEvent
      • ScyllaSceneWillUnloadEvent
    • Scylla.Core.Settings
      • ScyllaProjectSettings
    • Scylla.Core.Structures
      • FractionalHexCoord
      • GridUtil
      • HexCoord
      • HexCornerCoord
      • HexCornerMap<TData>
      • HexCornerMap<TData>.Enumerator
      • HexCornerPosition
      • HexEdgeCoord
      • HexEdgeDirection
      • HexEdgeMap<TData>
      • HexEdgeMap<TData>.Enumerator
      • HexGridLayout
      • HexLayoutMode
      • HexOrientation
      • IScyllaCollection
      • IScyllaCollection<T>
      • IScyllaGraph
      • IScyllaGrid<TCoord, TCell>
      • IScyllaMap<TKey, TValue>
      • IScyllaMutableGraph
      • IScyllaMutableGraph<TNodeData>
      • IScyllaMutableGraph<TNodeData, TEdgeData>
      • IScyllaPausableState<TContext>
      • IScyllaPriorityQueueItem
      • IScyllaReadOnlyGraph
      • IScyllaReadOnlyGraph<TNodeData>
      • IScyllaReadOnlyGraph<TNodeData, TEdgeData>
      • IScyllaState<TContext>
      • IScyllaTransition<TContext>
      • IScyllaTrie
      • IScyllaTrie<TValue>
      • NeighborWriter<TCoord>
      • ScyllaAABB2
      • ScyllaAABB3
      • ScyllaAdjacencyListGraph
      • ScyllaAdjacencyListGraph.Builder
      • ScyllaAdjacencyListGraph.NodeEnumerator
      • ScyllaAdjacencyListGraph.SynchronizedScyllaAdjacencyListGraph
      • ScyllaAdjacencyListGraph<TNodeData>
      • ScyllaAdjacencyListGraph<TNodeData, TEdgeData>
      • ScyllaBVH
      • ScyllaBVH.Builder
      • ScyllaBVHCore
      • ScyllaBitArray
      • ScyllaBitArray.Builder
      • ScyllaBitArray.Enumerator
      • ScyllaBitArray.SynchronizedScyllaBitArray
      • ScyllaBitArrayDOTS
      • ScyllaBitArrayDOTS.Builder
      • ScyllaBitArrayDOTS.Enumerator
      • ScyllaCSRGraph
      • ScyllaCSRGraph.Builder
      • ScyllaCSRGraph<TNodeData>
      • ScyllaCSRGraph<TNodeData, TEdgeData>
      • ScyllaCollectionCapabilities
      • ScyllaCollectionThreadSafety
      • ScyllaCompositeState<TContext>
      • ScyllaDequeDOTS<T>
      • ScyllaDequeDOTS<T>.Builder
      • ScyllaDeque<T>
      • ScyllaDeque<T>.Builder
      • ScyllaDeque<T>.Enumerator
      • ScyllaDeque<T>.SynchronizedScyllaDeque
      • ScyllaDisjointSet
      • ScyllaDisjointSet.Builder
      • ScyllaDisjointSet.SynchronizedScyllaDisjointSet
      • ScyllaDisjointSetDOTS
      • ScyllaDisjointSetDOTS.Builder
      • ScyllaGenericObjectPool<T>
      • ScyllaGenericObjectPool<T>.Builder
      • ScyllaGenericObjectPool<T>.Enumerator
      • ScyllaGenericObjectPool<T>.SynchronizedScyllaGenericObjectPool
      • ScyllaGraphAlgorithms
      • ScyllaGraphDOTS
      • ScyllaGraphDOTS.Builder
      • ScyllaGraphEdge
      • ScyllaGraphEdge<TEdgeData>
      • ScyllaGraphNode
      • ScyllaGraphNodeFlags
      • ScyllaGraphPath
      • ScyllaGraphProperties
      • ScyllaGraphSearchState
      • ScyllaGridGraphAdapter<TCoord, TCell>
      • ScyllaHexGrid<TCell>
      • ScyllaHexGrid<TCell>.Builder
      • ScyllaHexGrid<TCell>.Enumerator
      • ScyllaHexGrid<TCell>.SynchronizedScyllaHexGrid
      • ScyllaHierarchicalStateMachine<TContext>
      • ScyllaKDTree3
      • ScyllaKDTree3.Builder
      • ScyllaKDTree3Core
      • ScyllaKDTree3Core.Node
      • ScyllaLayeredStateMachine<TContext>
      • ScyllaLooseOctree
      • ScyllaLooseOctree.Builder
      • ScyllaLooseOctreeCore
      • ScyllaLooseOctreeUtil
      • ScyllaLooseOctree<T>
      • ScyllaLooseQuadtree
      • ScyllaLooseQuadtree.Builder
      • ScyllaLooseQuadtreeCore
      • ScyllaLooseQuadtreeUtil
      • ScyllaLooseQuadtree<T>
      • ScyllaMapDOTS<TKey, TValue>
      • ScyllaMapDOTS<TKey, TValue>.Builder
      • ScyllaMapEntry<TKey, TValue>
      • ScyllaMap<TKey, TValue>
      • ScyllaMap<TKey, TValue>.Builder
      • ScyllaMap<TKey, TValue>.Enumerator
      • ScyllaMap<TKey, TValue>.SynchronizedScyllaMap
      • ScyllaObjectPool<T>
      • ScyllaObjectPool<T>.Builder
      • ScyllaObjectPool<T>.Enumerator
      • ScyllaObjectPool<T>.SynchronizedScyllaObjectPool
      • ScyllaPausableStateBase<TContext>
      • ScyllaPriorityQueueDOTS<TValue>
      • ScyllaPriorityQueueDOTS<TValue>.Builder
      • ScyllaPriorityQueueItemComparer<T>
      • ScyllaPriorityQueueNode<TValue>
      • ScyllaPriorityQueueOrder
      • ScyllaPriorityQueue<T>
      • ScyllaPriorityQueue<T>.Builder
      • ScyllaPriorityQueue<T>.Enumerator
      • ScyllaPriorityQueue<T>.SynchronizedScyllaPriorityQueue
      • ScyllaPushdownStateMachine<TContext>
      • ScyllaQuadtreePlane
      • ScyllaQueueDOTS<T>
      • ScyllaQueueDOTS<T>.Builder
      • ScyllaQueue<T>
      • ScyllaQueue<T>.Builder
      • ScyllaQueue<T>.Enumerator
      • ScyllaQueue<T>.SynchronizedScyllaQueue
      • ScyllaRay3
      • ScyllaRingBufferDOTS<T>
      • ScyllaRingBufferDOTS<T>.Builder
      • ScyllaRingBufferDOTS<T>.Enumerator
      • ScyllaRingBufferDOTS<T>.ReverseEnumerable
      • ScyllaRingBufferDOTS<T>.ReverseEnumerator
      • ScyllaRingBuffer<T>
      • ScyllaRingBuffer<T>.Builder
      • ScyllaRingBuffer<T>.Enumerator
      • ScyllaRingBuffer<T>.ReverseEnumerable
      • ScyllaRingBuffer<T>.ReverseEnumerator
      • ScyllaRingBuffer<T>.SynchronizedScyllaRingBuffer
      • ScyllaSparseHexGrid<TCell>
      • ScyllaSparseHexGrid<TCell>.Builder
      • ScyllaSparseHexGrid<TCell>.Enumerator
      • ScyllaSparseHexGrid<TCell>.SynchronizedScyllaSparseHexGrid
      • ScyllaSparseSquareGrid<TCell>
      • ScyllaSparseSquareGrid<TCell>.Builder
      • ScyllaSparseSquareGrid<TCell>.Enumerator
      • ScyllaSparseSquareGrid<TCell>.SynchronizedScyllaSparseSquareGrid
      • ScyllaSparseTriGrid<TCell>
      • ScyllaSparseTriGrid<TCell>.Builder
      • ScyllaSparseTriGrid<TCell>.Enumerator
      • ScyllaSparseTriGrid<TCell>.SynchronizedScyllaSparseTriGrid
      • ScyllaSquareGrid<TCell>
      • ScyllaSquareGrid<TCell>.Builder
      • ScyllaSquareGrid<TCell>.Enumerator
      • ScyllaSquareGrid<TCell>.SynchronizedScyllaSquareGrid
      • ScyllaStackDOTS<T>
      • ScyllaStackDOTS<T>.Builder
      • ScyllaStack<T>
      • ScyllaStack<T>.Builder
      • ScyllaStack<T>.Enumerator
      • ScyllaStack<T>.SynchronizedScyllaStack
      • ScyllaStateBase<TContext>
      • ScyllaStateMachine<TContext>
      • ScyllaTransition<TContext>
      • ScyllaTriGrid<TCell>
      • ScyllaTriGrid<TCell>.Builder
      • ScyllaTriGrid<TCell>.Enumerator
      • ScyllaTriGrid<TCell>.SynchronizedScyllaTriGrid
      • ScyllaTrie
      • ScyllaTrie.Builder
      • ScyllaTrie.SynchronizedScyllaTrie
      • ScyllaTrie<TValue>
      • ScyllaTrie<TValue>.Builder
      • ScyllaTrie<TValue>.SynchronizedScyllaTrie
      • ScyllaTypeMap
      • ScyllaTypeMap.Builder
      • ScyllaTypeMap.DiagnosticEntry
      • ScyllaTypeMap.SynchronizedScyllaTypeMap
      • SerializableDictionary<TKey, TValue>
      • SquareAdjacency
      • SquareCoord
      • SquareCornerCoord
      • SquareCornerMap<TData>
      • SquareCornerMap<TData>.Enumerator
      • SquareDistanceMetric
      • SquareEdgeCoord
      • SquareEdgeDirection
      • SquareEdgeMap<TData>
      • SquareEdgeMap<TData>.Enumerator
      • SquareGridLayout
      • TriCoord
      • TriCornerCoord
      • TriCornerMap<TData>
      • TriCornerMap<TData>.Enumerator
      • TriEdgeCoord
      • TriEdgeDirection
      • TriEdgeMap<TData>
      • TriEdgeMap<TData>.Enumerator
      • TriGridLayout
    • Scylla.Core.Time
      • CalendarDefinition
      • CalendarMath
      • ClockDayChangedEvent
      • ClockDebugInfo
      • ClockDefinition
      • ClockEraChangedEvent
      • ClockEvent
      • ClockEventKind
      • ClockHourChangedEvent
      • ClockMinuteChangedEvent
      • ClockMonthChangedEvent
      • ClockPausedEvent
      • ClockRegisteredEvent
      • ClockResumedEvent
      • ClockSeasonChangedEvent
      • ClockSecondChangedEvent
      • ClockState
      • ClockTickEvent
      • ClockTimeScaleChangedEvent
      • ClockUnregisteredEvent
      • ClockWeekdayChangedEvent
      • ClockYearChangedEvent
      • EraDefinition
      • GameDate
      • IClockListener
      • IClockSource
      • IEraConditionProvider
      • ILocationProfile
      • INetworkTimeSyncStrategy
      • ITimeListener
      • LeapYearRule
      • MasterTimeState
      • MonthDefinition
      • PauseMode
      • ScheduleExtensions
      • ScheduleMode
      • ScheduledTickHandle
      • ScyllaClock
      • ScyllaTime
      • ScyllaTimeConfiguration
      • ScyllaTimeDebugInfo
      • SeasonDefinition
      • SmoothTimeScaleTransition
      • TimeEffectHandle
      • TimeEffects
      • TimeEvent
      • TimeScaleBlendMode
      • TimeScaleModifier
      • TimeScaleModifierHandle
      • TimeScaleModifierStack
      • TimeScaleModifierState
      • TimeTickRunner
      • WeekdayDefinition
    • Scylla.Core.Util
      • ArrayUtil
      • AssemblyUtil
      • CameraUtil
      • CollectionUtil
      • ColorUtil
      • ComponentUtil
      • DateUtil
      • DebugCamera
      • FontUtil
      • FontVariant
      • GameObjectExtensions
      • GameObjectUtil
      • InterfaceUtil
      • Interpolation
      • LightUtil
      • LitMaterialDescriptor
      • ManualResetEventEx
      • MaterialUtil
      • NumberExtensions
      • NumberUtil
      • OptionalPackages
      • PlatformUtil
      • ResourceUtil
      • SpriteUtil
      • StringUtil
      • TabularText
      • TabularText.Builder
      • TestTextGenerator
      • ThreadUtil
      • TimeUtil
      • Timer
      • TransformExtensions
      • TypeUtil
      • UnicodeRange
      • VirtualTransform
    • Scylla.Core.Util.Addressables
      • AddressableErrorCode
      • AddressableException
      • AddressableExtensions
      • AddressableProgress
      • AddressableResult
      • AddressableResult<T>
      • AddressableSettings
      • ManagedAddressableList<T>
      • ManagedAddressable<T>
      • ScyllaAddressables
    • Scylla.Core.Util.Checksum
      • ChecksumAdler32
      • ChecksumCRC16
      • ChecksumCRC32
      • ChecksumFletcher32
      • ChecksumXXHash32
      • ChecksumXXHash64
      • IChecksum
    • Scylla.Core.Util.Compression
      • ArchiveEntryInfo
      • CompressionAlgorithm
      • CompressionErrorCode
      • CompressionException
      • CompressionExtensions
      • CompressionLevel
      • CompressionProgress
      • CompressionResult
      • CompressionResult<T>
      • CompressionSettings
      • IArchiveProvider
      • ICompressionProvider
      • ScyllaCompression
    • Scylla.Core.Util.Crypto
      • CryptoAlgorithm
      • CryptoErrorCode
      • CryptoException
      • CryptoExtensions
      • CryptoSettings
      • ICryptoProvider
      • KeyDerivationHash
      • KeyDerivationSettings
      • ScyllaCrypto
    • Scylla.Core.Util.DebugDraw
      • DebugDraw
      • DebugDrawSpace
      • DebugDrawTextAlign
    • Scylla.Core.Util.Effects
      • ColorAnimationText
      • ColorAnimationTextDirection
      • ColorAnimationTextGradient
    • Scylla.Core.Util.File
      • ConfigFile
      • ConfigFileGroup
      • ConfigFileProperty
      • ConfigFilePropertyType
      • ConfigFileUtil
      • FileErrorCode
      • FileException
      • FileExtensions
      • FilePathExtensions
      • FilePathUtil
      • FileProgress
      • FileSettings
      • ImageFileFormat
      • ImageFileSettings
      • ScyllaFileUtil
    • Scylla.Core.Util.Geom
      • AABB3D
      • BarrelColoringMode
      • BollardColoringMode
      • CappedWallColoringMode
      • Capsule3D
      • ColliderMode
      • CrateColoringMode
      • Ellipse
      • FaceColoringMode
      • IFaceColorResolver
      • OBB3D
      • PaletteFaceColorResolver
      • PaneledWall1ColoringMode
      • PaneledWall2ColoringMode
      • PipeSegmentColoringMode
      • RoundedBoxColoringMode
      • ScyllaArchwayShape
      • ScyllaBarrelShape
      • ScyllaBollardShape
      • ScyllaBoxShape
      • ScyllaCappedWallShape
      • ScyllaCapsuleShape
      • ScyllaColumnShape
      • ScyllaConeShape
      • ScyllaCrateShape
      • ScyllaCurvedStairsShape
      • ScyllaCylinderShape
      • ScyllaDomeShape
      • ScyllaFloorTileShape
      • ScyllaIcoSphereShape
      • ScyllaLadderShape
      • ScyllaLinearStairsShape
      • ScyllaOctahedronShape
      • ScyllaPaneledWall1Shape
      • ScyllaPaneledWall2Shape
      • ScyllaPipeSegmentShape
      • ScyllaPipeShape
      • ScyllaPlaneShape
      • ScyllaPyramidShape
      • ScyllaQuadShape
      • ScyllaRampShape
      • ScyllaRingShape
      • ScyllaRoundedBoxShape
      • ScyllaShapeBase3D
      • ScyllaShapes
      • ScyllaShelvedWallShape
      • ScyllaSignShape
      • ScyllaSkirtedWallShape
      • ScyllaSkyDomeShape
      • ScyllaSphereShape
      • ScyllaSpiralStairsShape
      • ScyllaTorusShape
      • ScyllaTriangularPrismShape
      • ScyllaWallShape
      • ScyllaWallWithDoorShape
      • ScyllaWallWithWindowShape
      • ShapeMaterialCache
      • ShelvedWallColoringMode
      • SignColoringMode
      • Size2D
      • Size3D
      • SkirtedWallColoringMode
      • Sphere3D
      • StairsColoringMode
      • UniformColorResolver
    • Scylla.Core.Util.Math
      • Complex
      • MathUtil
      • Monomial
      • Polynomial
    • Scylla.Core.Util.Noise
      • CellularDistanceType
      • CellularReturnType
      • CellularSettings
      • FractalType
      • NoiseAlgorithm
      • NoiseCurlSampler
      • NoiseDomainWarper
      • NoiseGenerator
      • NoiseSettings
      • PixelNoise
      • PixelNoiseDistribution
      • PixelNoiseSettings
      • WarpSettings
    • Scylla.Core.Util.Palette
      • ColorAssetRegistry
      • ColorGradient
      • ColorGradientAlphaStop
      • ColorGradientAlphaStopData
      • ColorGradientAsset
      • ColorGradientColorSpace
      • ColorGradientData
      • ColorGradientMode
      • ColorGradientStop
      • ColorGradientStopData
      • ColorGradientStopInterpolation
      • ColorPalette
      • ColorPaletteAsset
      • ColorPaletteData
      • ColorPaletteEntry
      • ColorPaletteEntryData
      • ColorPaletteMapping
      • ColorRole
      • ColorStopBlendMode
      • ColorSwatchCollection
      • ColorSwatchCollectionAsset
      • ColorSwatchCollectionData
      • ColorSwatchEntryData
      • MutableColorGradient
      • MutableColorPalette
    • Scylla.Core.Util.ProceduralMapGen
      • BSPSettings
      • CellularAutomataSettings
      • CorridorStyle
      • DoorAxis
      • DoorPlacement
      • DoorPlacementSettings
      • DoorShapeConfig
      • DrunkardWalkSettings
      • FloorplanSettings
      • InstantiationResult
      • MapCellType
      • MapCorridor<TCoord>
      • MapGenResult<TCoord>
      • MapGenSettings
      • MapOverlaySettings
      • MapPatternType
      • MapRoom<TCoord>
      • MazeRoomSettings
      • MazeSettings
      • NoiseThresholdSettings
      • ProceduralMapGenerator
      • ProceduralMapOverlay
      • ProceduralMapPostProcessor
      • RoomCorridorSettings
      • RoomGroup
      • ScyllaProceduralMapInstantiator
      • VoronoiRegionSettings
      • WindingCorridorSettings
    • Scylla.Core.Util.Random
      • AliasTable
      • CryptoRandomSource
      • DiceRoll
      • IProbabilityInfluence
      • IRandomSource
      • MersenneTwister
      • MersenneTwisterState
      • PCG32
      • PCG32State
      • PickHistory
      • PickRecord
      • PoissonDiskSampler
      • PoissonDiskSampler.BoundChecker
      • ProbabilityEntry<T>
      • ProbabilityList<T>
      • ProbabilityNormalizer
      • RandomAlgorithm
      • RandomExtensions
      • RandomID
      • RandomSeeder
      • RandomText
      • RandomUtil
      • RandomUtil.DeterministicRNG
      • RandomUtil.DeterministicRNGState
      • RepeatPreventionMode
      • SelectionStrategy
      • SplitMix64RNG
      • SplitMix64State
      • SystemRandomSource
      • UnityRandomSource
      • Xoroshiro128Plus
      • Xoroshiro128State
      • Xoshiro256StarStar
      • Xoshiro256State
    • Scylla.Core.Util.Ranges
      • DoubleRange
      • FloatRange
      • IntRange
    • Scylla.Core.Util.Serialization
      • ArraySerializer<T>
      • BoolSerializer
      • BoundsSerializer
      • ByteArraySerializer
      • ByteSerializer
      • CharSerializer
      • Color32Serializer
      • ColorSerializer
      • DateTimeOffsetSerializer
      • DateTimeSerializer
      • DecimalSerializer
      • DefaultValueHandling
      • DictionarySerializer<TKey, TValue>
      • DoubleSerializer
      • EnumSerializer<T>
      • FloatSerializer
      • GuidSerializer
      • HashSetSerializer<T>
      • IScyllaReader
      • IScyllaWriter
      • ISerializationContext
      • ITypeSerializer
      • ITypeSerializer<T>
      • IntSerializer
      • LayerMaskSerializer
      • ListSerializer<T>
      • LongSerializer
      • NullHandling
      • PropertyMetadata
      • QuaternionSerializer
      • QueueSerializer<T>
      • RectIntSerializer
      • RectSerializer
      • ReferenceHandling
      • ReferenceTracker
      • ReflectionSerializer
      • SByteSerializer
      • ScyllaIgnoreAttribute
      • ScyllaIncludeAttribute
      • ScyllaJSONReader
      • ScyllaJSONWriter
      • ScyllaMigrationAttribute
      • ScyllaPropertyAttribute
      • ScyllaSerializableAttribute
      • ScyllaSerialization
      • SerializationContext
      • SerializationEngine
      • SerializationException
      • SerializationFormat
      • SerializationResult
      • SerializationResult<T>
      • SerializationSettings
      • SerializationSettings.Builder
      • SerializationToken
      • ShortSerializer
      • StackSerializer<T>
      • StringSerializer
      • TimeSpanSerializer
      • TypeMetadata
      • TypeMetadataCache
      • TypeSerializerAdapter<T>
      • TypeSerializerBase<T>
      • UIntSerializer
      • ULongSerializer
      • UShortSerializer
      • Vector2IntSerializer
      • Vector2Serializer
      • Vector3IntSerializer
      • Vector3Serializer
      • Vector4Serializer
    • Scylla.Core.Util.Tween
      • Ease
      • EaseType
      • ITween
      • LoopType
      • ScyllaShapeTweenExtensions
      • ScyllaTween
      • SequenceItem
      • SequenceItemType
      • TweenAudioSourceExtensions
      • TweenBase
      • TweenCanvasGroupExtensions
      • TweenColor
      • TweenErrorCode
      • TweenException
      • TweenExtensions
      • TweenFloat
      • TweenID
      • TweenLerp
      • TweenManager
      • TweenMaterialExtensions
      • TweenPool
      • TweenQuaternion
      • TweenRectTransformExtensions
      • TweenSequence
      • TweenSettings
      • TweenSpriteRendererExtensions
      • TweenState
      • TweenTransformExtensions
      • TweenVector2
      • TweenVector3
      • TweenVector4
      • Tween<T>
    • Scylla.Core.Util.UI
      • DebugCanvasUtil
      • GradientBackground
      • IUIText
      • IUITextField
      • LineScrollTextArea
      • LineScrollTextAreaBuilder
      • LineScrollTextBuffer
      • LineScrollTextBuffer.Builder
      • LineScrollTextBuffer.LogicalLine
      • LineScrollTextBufferLineAddedEvent
      • LineScrollTextBufferScrolledEvent
      • LineScrollWindow
      • LineScrollWindow.Enumerator
      • ScrollDirection
      • ScrollPhysics
      • ScrollTextArea
      • ScrollTextAreaBuilder
      • ScrollTextAreaDragEndedEvent
      • ScrollTextAreaDragStartedEvent
      • ScrollTextAreaScrolledEvent
      • ScrollTextBuffer
      • ScrollTextBuffer.Builder
      • ScrollTextBuffer.ScrollTextLine
      • ScrollTextBufferLineAddedEvent
      • ScrollTextLineView
      • ScyllaScrollRect
      • ScyllaUIAdaptiveStack
      • ScyllaUIAlignment
      • ScyllaUIAspectBreakpoint
      • ScyllaUICrossAlignment
      • ScyllaUIEdgeInsets
      • ScyllaUIFitMode
      • ScyllaUIFlexElement
      • ScyllaUIGrid
      • ScyllaUIGridItem
      • ScyllaUIHStack
      • ScyllaUILayoutAnimator
      • ScyllaUILayoutDebugDraw
      • ScyllaUILayoutDebugDrawConfig
      • ScyllaUILayoutGizmos
      • ScyllaUILayoutRoot
      • ScyllaUILayoutStyle
      • ScyllaUILength
      • ScyllaUILengthUnit
      • ScyllaUIPositioned
      • ScyllaUIScreenMargin
      • ScyllaUISizeMode
      • ScyllaUISpacer
      • ScyllaUIStackBase
      • ScyllaUIText
      • ScyllaUITextGroup
      • ScyllaUITrack
      • ScyllaUITrackSizingMode
      • ScyllaUIVStack
      • ScyllaUIZStack
      • TMPSettings
      • TMPUtil
      • TextSelectionPosition
      • TextSelectionRange
      • UIAlignment
      • UIAnchor
      • UIAnchors
      • UIFontReference
      • UIFontStyle
      • UIMargin
      • UIPadding
      • UITextBuilder
      • UITextComponent
      • UITextFactory
      • UITextFieldBuilder
      • UITextFieldComponent
      • UIUtil
      • VisualLine
    • Scylla.Core.Util.Units
      • AreaUnit
      • DataUnit
      • LengthUnit
      • MassUnit
      • PressureUnit
      • SpeedUnit
      • TemperatureUnit
      • TimeFormat
      • TimeUnit

    Class FileExtensions

    Extension methods that enable fluent, caller-friendly file I/O on common types. Rather than calling ScyllaFileUtil directly, these extensions allow data to be saved in a natural, object-oriented style (e.g. myBytes.SaveToFile(path) or texture.SaveAsPNG(path)).

    Extensions are organized by the type they extend:

    • byte[] - write raw binary data, optionally with GZip compression or AES encryption.
    • string - write or append UTF-8 text, with optional encoding or FileSettings overrides.
    • Texture2D - encode and save Unity textures as PNG, JPG, WEBP, TGA, or EXR using ImageFileSettings presets or per-format convenience methods.
    • IEnumerable<string> - write or append a sequence of text lines.
    • Generic objects (T : class) - JSON-serialize an object and write it to a file, optionally with compression and encryption (secure save).

    All synchronous methods throw FileException on failure. All asynchronous variants return a Task and accept an optional CancellationToken.

    Inheritance
    object
    FileExtensions
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Scylla.Core.Util.File
    Assembly: ScyllaCore.dll
    Syntax
    public static class FileExtensions

    Methods

    AppendLinesToFile(IEnumerable<string>, string)

    Appends the sequence of strings to an existing text file, writing each element on its own line, and creating the file and any missing parent directories if they do not already exist. Uses UTF-8 encoding.

    Declaration
    public static void AppendLinesToFile(this IEnumerable<string> lines, string path)
    Parameters
    Type Name Description
    IEnumerable<string> lines

    The sequence of lines to append. Each element is written as a single line followed by a line separator. May be empty but must not be null.

    string path

    The absolute or relative file path to append to.

    Exceptions
    Type Condition
    FileException

    Thrown when the append operation fails due to an I/O error.

    AppendLinesToFileAsync(IEnumerable<string>, string, CancellationToken)

    Asynchronously appends the sequence of strings to an existing text file, writing each element on its own line, and creating the file and any missing parent directories if they do not already exist. Uses UTF-8 encoding.

    Declaration
    public static Task AppendLinesToFileAsync(this IEnumerable<string> lines, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    IEnumerable<string> lines

    The sequence of lines to append. Each element is written as a single line followed by a line separator. May be empty but must not be null.

    string path

    The absolute or relative file path to append to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the append operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the append operation fails due to an I/O error.

    AppendToFile(string, string)

    Appends the string to an existing text file at the specified path, creating the file and any missing parent directories if they do not already exist. Uses UTF-8 encoding.

    Declaration
    public static void AppendToFile(this string text, string path)
    Parameters
    Type Name Description
    string text

    The text content to append to the file. May be null or empty.

    string path

    The absolute or relative file path to append to.

    Exceptions
    Type Condition
    FileException

    Thrown when the append operation fails due to an I/O error.

    AppendToFileAsync(string, string, CancellationToken)

    Asynchronously appends the string to an existing text file at the specified path, creating the file and any missing parent directories if they do not already exist. Uses UTF-8 encoding.

    Declaration
    public static Task AppendToFileAsync(this string text, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    string text

    The text content to append to the file. May be null or empty.

    string path

    The absolute or relative file path to append to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the append operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the append operation fails due to an I/O error.

    SaveAsEXR(Texture2D, string, EXRFlags)

    Encodes the texture as an OpenEXR high dynamic range (HDR) image and writes it to the specified path. EXR supports 16-bit and 32-bit floating-point color channels and is the standard format for HDR content in visual effects and linear-space rendering workflows. Use UnityEngine.Texture2D.EXRFlags.CompressZIP for lossless ZIP compression.

    Declaration
    public static void SaveAsEXR(this Texture2D texture, string path, Texture2D.EXRFlags flags = EXRFlags.None)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the EXR image to.

    Texture2D.EXRFlags flags

    The UnityEngine.Texture2D.EXRFlags controlling EXR encoding options, such as compression method and bit depth. Defaults to UnityEngine.Texture2D.EXRFlags.None (uncompressed 16-bit half-float).

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsEXRAsync(Texture2D, string, EXRFlags, CancellationToken)

    Asynchronously encodes the texture as an OpenEXR high dynamic range (HDR) image and writes it to the specified path. EXR supports 16-bit and 32-bit floating-point color channels and is the standard format for HDR content in visual effects and linear-space rendering workflows.

    Declaration
    public static Task SaveAsEXRAsync(this Texture2D texture, string path, Texture2D.EXRFlags flags = EXRFlags.None, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the EXR image to.

    Texture2D.EXRFlags flags

    The UnityEngine.Texture2D.EXRFlags controlling EXR encoding options, such as compression method and bit depth. Defaults to UnityEngine.Texture2D.EXRFlags.None (uncompressed 16-bit half-float).

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsJPG(Texture2D, string, int)

    Encodes the texture as a lossy JPEG image with the specified quality and writes it to the specified path. Higher quality values produce larger files with fewer artifacts; lower values produce smaller files with more visible compression. JPEG does not support transparency - any alpha channel in the source texture is discarded.

    Declaration
    public static void SaveAsJPG(this Texture2D texture, string path, int quality = 90)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the JPEG image to.

    int quality

    The JPEG encoding quality in the range 1 (lowest quality, smallest file) to 100 (highest quality, largest file). Defaults to DEFAULT_QUALITY (90).

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsJPGAsync(Texture2D, string, int, CancellationToken)

    Asynchronously encodes the texture as a lossy JPEG image with the specified quality and writes it to the specified path. JPEG does not support transparency - any alpha channel in the source texture is discarded.

    Declaration
    public static Task SaveAsJPGAsync(this Texture2D texture, string path, int quality = 90, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the JPEG image to.

    int quality

    The JPEG encoding quality in the range 1 (lowest quality, smallest file) to 100 (highest quality, largest file). Defaults to DEFAULT_QUALITY (90).

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsPNG(Texture2D, string)

    Encodes the texture as a lossless PNG image and writes it to the specified path. PNG supports transparency (alpha channel) and produces pixel-perfect output with no compression artifacts, at the cost of larger file sizes compared to lossy formats.

    Declaration
    public static void SaveAsPNG(this Texture2D texture, string path)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the PNG image to.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsPNGAsync(Texture2D, string, CancellationToken)

    Asynchronously encodes the texture as a lossless PNG image and writes it to the specified path. PNG supports transparency (alpha channel) and produces pixel-perfect output with no compression artifacts.

    Declaration
    public static Task SaveAsPNGAsync(this Texture2D texture, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the PNG image to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsTGA(Texture2D, string)

    Encodes the texture as a TGA (Targa) image and writes it to the specified path. TGA is a legacy lossless format that supports transparency (alpha channel) and is widely supported by 3D content creation tools and texture pipelines.

    Declaration
    public static void SaveAsTGA(this Texture2D texture, string path)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the TGA image to.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsTGAAsync(Texture2D, string, CancellationToken)

    Asynchronously encodes the texture as a TGA (Targa) image and writes it to the specified path. TGA is a legacy lossless format that supports transparency (alpha channel) and is widely supported by 3D content creation tools and texture pipelines.

    Declaration
    public static Task SaveAsTGAAsync(this Texture2D texture, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the TGA image to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveAsWEBP(Texture2D, string, int)

    Encodes the texture as a WebP image with the specified quality and writes it to the specified path. WebP supports both transparency (alpha channel) and lossy compression, and typically achieves smaller file sizes than JPEG or PNG at equivalent visual quality, making it well-suited for web and streaming use cases.

    Declaration
    public static void SaveAsWEBP(this Texture2D texture, string path, int quality = 90)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the WebP image to.

    int quality

    The WebP encoding quality in the range 1 (lowest quality, smallest file) to 100 (highest quality, largest file). Defaults to DEFAULT_QUALITY (90).

    Exceptions
    Type Condition
    FileException

    Thrown when WebP encoding is not supported or the write fails.

    SaveAsWEBPAsync(Texture2D, string, int, CancellationToken)

    Asynchronously encodes the texture as a WebP image with the specified quality and writes it to the specified path. WebP supports both transparency (alpha channel) and lossy compression, making it well-suited for web and streaming use cases.

    Declaration
    public static Task SaveAsWEBPAsync(this Texture2D texture, string path, int quality = 90, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the WebP image to.

    int quality

    The WebP encoding quality in the range 1 (lowest quality, smallest file) to 100 (highest quality, largest file). Defaults to DEFAULT_QUALITY (90).

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when WebP encoding is not supported or the write fails.

    SaveCompressedToFile(byte[], string)

    Compresses the byte array using GZip and writes the compressed data to a file at the specified path. Use this for binary data that benefits from lossless compression, such as serialized game state or asset bundles. To read the data back, use the corresponding decompression API in ScyllaFileUtil.

    Declaration
    public static void SaveCompressedToFile(this byte[] data, string path)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to compress and write.

    string path

    The absolute or relative file path to write the compressed data to.

    Exceptions
    Type Condition
    FileException

    Thrown when the compression or write operation fails due to an I/O or compression error.

    SaveCompressedToFileAsync(byte[], string, CancellationToken)

    Asynchronously compresses the byte array using GZip and writes the compressed data to a file at the specified path. Use this for binary data that benefits from lossless compression, such as serialized game state or asset bundles.

    Declaration
    public static Task SaveCompressedToFileAsync(this byte[] data, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to compress and write.

    string path

    The absolute or relative file path to write the compressed data to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the compress-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the compression or write operation fails due to an I/O or compression error.

    SaveEncryptedToFile(byte[], string, string)

    Encrypts the byte array using AES (via ScyllaCrypto) and writes the encrypted data to a file at the specified path. The password is used to derive an AES key via PBKDF2. To recover the data, use the corresponding decryption API in ScyllaFileUtil with the same password.

    Declaration
    public static void SaveEncryptedToFile(this byte[] data, string path, string password)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to encrypt and write.

    string path

    The absolute or relative file path to write the encrypted data to.

    string password

    The plaintext password used to derive the AES encryption key. Must not be null or empty. The same password must be supplied for decryption.

    Exceptions
    Type Condition
    FileException

    Thrown when the encryption or write operation fails due to a cryptographic or I/O error.

    SaveEncryptedToFileAsync(byte[], string, string, CancellationToken)

    Asynchronously encrypts the byte array using AES (via ScyllaCrypto) and writes the encrypted data to a file at the specified path. The password is used to derive an AES key via PBKDF2.

    Declaration
    public static Task SaveEncryptedToFileAsync(this byte[] data, string path, string password, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to encrypt and write.

    string path

    The absolute or relative file path to write the encrypted data to.

    string password

    The plaintext password used to derive the AES encryption key. Must not be null or empty. The same password must be supplied for decryption.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encrypt-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the encryption or write operation fails due to a cryptographic or I/O error.

    SaveLinesToFile(IEnumerable<string>, string)

    Writes the sequence of strings to a text file, writing each element on its own line using the platform's default line separator, and overwriting any existing file. Parent directories are created as needed. Uses UTF-8 encoding and default FileSettings.

    Declaration
    public static void SaveLinesToFile(this IEnumerable<string> lines, string path)
    Parameters
    Type Name Description
    IEnumerable<string> lines

    The sequence of lines to write. Each element is written as a single line followed by a line separator. May be empty but must not be null.

    string path

    The absolute or relative file path to write to.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveLinesToFile(IEnumerable<string>, string, FileSettings)

    Writes the sequence of strings to a text file using the provided I/O settings, writing each element on its own line and overwriting any existing file. Parent directories are created as needed.

    Declaration
    public static void SaveLinesToFile(this IEnumerable<string> lines, string path, FileSettings settings)
    Parameters
    Type Name Description
    IEnumerable<string> lines

    The sequence of lines to write. Each element is written as a single line followed by a line separator. May be empty but must not be null.

    string path

    The absolute or relative file path to write to.

    FileSettings settings

    The FileSettings controlling the write operation, including encoding and buffer size.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveLinesToFileAsync(IEnumerable<string>, string, FileSettings, CancellationToken)

    Asynchronously writes the sequence of strings to a text file using the provided I/O settings, writing each element on its own line and overwriting any existing file. Parent directories are created as needed.

    Declaration
    public static Task SaveLinesToFileAsync(this IEnumerable<string> lines, string path, FileSettings settings, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    IEnumerable<string> lines

    The sequence of lines to write. Each element is written as a single line followed by a line separator. May be empty but must not be null.

    string path

    The absolute or relative file path to write to.

    FileSettings settings

    The FileSettings controlling the write operation, including encoding and buffer size.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveLinesToFileAsync(IEnumerable<string>, string, CancellationToken)

    Asynchronously writes the sequence of strings to a text file, writing each element on its own line and overwriting any existing file. Parent directories are created as needed. Uses UTF-8 encoding.

    Declaration
    public static Task SaveLinesToFileAsync(this IEnumerable<string> lines, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    IEnumerable<string> lines

    The sequence of lines to write. Each element is written as a single line followed by a line separator. May be empty but must not be null.

    string path

    The absolute or relative file path to write to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveSecureToFileAsync<T>(T, string, string, CancellationToken)

    Asynchronously serializes obj to JSON, GZip-compresses the result, AES-encrypts the compressed bytes (via ScyllaCrypto), and writes the encrypted data to the specified path. This is the recommended approach for persisting sensitive game data such as save files.

    Declaration
    public static Task SaveSecureToFileAsync<T>(this T obj, string path, string password, CancellationToken cancellationToken = default) where T : class
    Parameters
    Type Name Description
    T obj

    The object instance to serialize and securely write. Must not be null.

    string path

    The absolute or relative file path to write the encrypted data to.

    string password

    The plaintext password used to derive the AES encryption key via PBKDF2. Must not be null or empty. The same password must be supplied for decryption.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the serialize-compress-encrypt-write pipeline has finished.

    Type Parameters
    Name Description
    T

    The type of object to serialize. Must be a reference type and must be serializable by the ScyllaSerialization engine.

    Exceptions
    Type Condition
    FileException

    Thrown when serialization, compression, encryption, or writing fails.

    SaveSecureToFile<T>(T, string, string)

    Serializes obj to JSON, GZip-compresses the result, AES-encrypts the compressed bytes (via ScyllaCrypto), and writes the encrypted data to the specified path. This is the recommended approach for persisting sensitive game data such as save files. To recover the object, use the corresponding secure load API in ScyllaFileUtil with the same password.

    Declaration
    public static void SaveSecureToFile<T>(this T obj, string path, string password) where T : class
    Parameters
    Type Name Description
    T obj

    The object instance to serialize and securely write. Must not be null.

    string path

    The absolute or relative file path to write the encrypted data to.

    string password

    The plaintext password used to derive the AES encryption key via PBKDF2. Must not be null or empty. The same password must be supplied for decryption.

    Type Parameters
    Name Description
    T

    The type of object to serialize. Must be a reference type and must be serializable by the ScyllaSerialization engine.

    Exceptions
    Type Condition
    FileException

    Thrown when serialization, compression, encryption, or writing fails.

    SaveToFile(byte[], string)

    Writes the byte array to a file at the specified path, overwriting any existing file and creating parent directories as needed. Uses default FileSettings (64KB buffer, no async I/O).

    Declaration
    public static void SaveToFile(this byte[] data, string path)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to write to the file.

    string path

    The absolute or relative file path to write to.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFile(byte[], string, FileSettings)

    Writes the byte array to a file at the specified path using the provided I/O settings, which control buffer size, overwrite behavior, directory creation, and async I/O mode.

    Declaration
    public static void SaveToFile(this byte[] data, string path, FileSettings settings)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to write to the file.

    string path

    The absolute or relative file path to write to.

    FileSettings settings

    The FileSettings controlling the write operation. Use presets such as BinaryFile or LargeFile for common scenarios, or construct a custom instance.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFile(string, string)

    Writes the string to a text file at the specified path, overwriting any existing file and creating parent directories as needed. Uses UTF-8 encoding and default FileSettings.

    Declaration
    public static void SaveToFile(this string text, string path)
    Parameters
    Type Name Description
    string text

    The text content to write to the file. May be null or empty.

    string path

    The absolute or relative file path to write to.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFile(string, string, FileSettings)

    Writes the string to a text file at the specified path using the provided I/O settings, which control encoding, buffer size, overwrite behavior, and directory creation.

    Declaration
    public static void SaveToFile(this string text, string path, FileSettings settings)
    Parameters
    Type Name Description
    string text

    The text content to write to the file. May be null or empty.

    string path

    The absolute or relative file path to write to.

    FileSettings settings

    The FileSettings controlling the write operation. The Encoding property determines the text encoding used. Use TextFile for BOM-aware UTF-8 text files.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFile(string, string, Encoding)

    Writes the string to a text file at the specified path using the specified text encoding, overwriting any existing file and creating parent directories as needed.

    Declaration
    public static void SaveToFile(this string text, string path, Encoding encoding)
    Parameters
    Type Name Description
    string text

    The text content to write to the file. May be null or empty.

    string path

    The absolute or relative file path to write to.

    Encoding encoding

    The Encoding to use when writing the text. Common choices are UTF8, Unicode, or ASCII.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFile(Texture2D, string)

    Encodes the texture to the format specified by Default (PNG) and writes it to the specified path. The texture must be readable (i.e. not have read/write disabled in its import settings or been created with MakeReadable = false).

    Declaration
    public static void SaveToFile(this Texture2D texture, string path)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the image to.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveToFile(Texture2D, string, ImageFileSettings)

    Encodes the texture using the format and quality specified in settings and writes the result to the specified path. Use ImageFileSettings presets such as HighQuality, WebOptimized, or HDR for common scenarios.

    Declaration
    public static void SaveToFile(this Texture2D texture, string path, ImageFileSettings settings)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the image to.

    ImageFileSettings settings

    The ImageFileSettings controlling the image format, quality (for lossy formats), EXR flags, and other encoding options.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveToFileAsync(byte[], string, FileSettings, CancellationToken)

    Asynchronously writes the byte array to a file at the specified path using the provided I/O settings. Parent directories are created as needed.

    Declaration
    public static Task SaveToFileAsync(this byte[] data, string path, FileSettings settings, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to write to the file.

    string path

    The absolute or relative file path to write to.

    FileSettings settings

    The FileSettings controlling the write operation. Use Async or LargeFile for async operations, or construct a custom instance with UseAsyncIO set to true for best performance.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFileAsync(byte[], string, CancellationToken)

    Asynchronously writes the byte array to a file at the specified path, overwriting any existing file and creating parent directories as needed. Uses default FileSettings with async I/O.

    Declaration
    public static Task SaveToFileAsync(this byte[] data, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    byte[] data

    The raw binary data to write to the file.

    string path

    The absolute or relative file path to write to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFileAsync(string, string, FileSettings, CancellationToken)

    Asynchronously writes the string to a text file at the specified path using the provided I/O settings. Parent directories are created as needed.

    Declaration
    public static Task SaveToFileAsync(this string text, string path, FileSettings settings, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    string text

    The text content to write to the file. May be null or empty.

    string path

    The absolute or relative file path to write to.

    FileSettings settings

    The FileSettings controlling the write operation, including encoding and buffer size. Use Async or set UseAsyncIO to true for best async performance.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFileAsync(string, string, CancellationToken)

    Asynchronously writes the string to a text file at the specified path, overwriting any existing file and creating parent directories as needed. Uses UTF-8 encoding and default FileSettings with async I/O.

    Declaration
    public static Task SaveToFileAsync(this string text, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    string text

    The text content to write to the file. May be null or empty.

    string path

    The absolute or relative file path to write to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when the write operation fails due to an I/O error.

    SaveToFileAsync(Texture2D, string, ImageFileSettings, CancellationToken)

    Asynchronously encodes the texture using the format and quality specified in settings and writes the result to the specified path.

    Declaration
    public static Task SaveToFileAsync(this Texture2D texture, string path, ImageFileSettings settings, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the image to.

    ImageFileSettings settings

    The ImageFileSettings controlling the image format, quality (for lossy formats), EXR flags, and other encoding options.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveToFileAsync(Texture2D, string, CancellationToken)

    Asynchronously encodes the texture to the format specified by Default (PNG) and writes it to the specified path.

    Declaration
    public static Task SaveToFileAsync(this Texture2D texture, string path, CancellationToken cancellationToken = default)
    Parameters
    Type Name Description
    Texture2D texture

    The UnityEngine.Texture2D to encode and save. Must not be null.

    string path

    The absolute or relative file path to write the image to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the encode-and-write operation has finished.

    Exceptions
    Type Condition
    FileException

    Thrown when encoding or writing fails.

    SaveToFileAsync<T>(T, string, CancellationToken)

    Asynchronously serializes obj to JSON using the ScyllaSerialization engine with default settings and writes the resulting JSON text to the specified file path, overwriting any existing file. Parent directories are created as needed.

    Declaration
    public static Task SaveToFileAsync<T>(this T obj, string path, CancellationToken cancellationToken = default) where T : class
    Parameters
    Type Name Description
    T obj

    The object instance to serialize and write. Must not be null.

    string path

    The absolute or relative file path to write the JSON to.

    CancellationToken cancellationToken

    An optional CancellationToken that can be used to cancel the operation. Defaults to None.

    Returns
    Type Description
    Task

    A Task that completes when the serialize-and-write operation has finished.

    Type Parameters
    Name Description
    T

    The type of object to serialize. Must be a reference type and must be serializable by the ScyllaSerialization engine.

    Exceptions
    Type Condition
    FileException

    Thrown when serialization or writing fails.

    SaveToFile<T>(T, string)

    Serializes obj to JSON using the ScyllaSerialization engine with default settings and writes the resulting JSON text to the specified file path, overwriting any existing file. Parent directories are created as needed. To load the object back, use the corresponding deserialization API in ScyllaFileUtil.

    Declaration
    public static void SaveToFile<T>(this T obj, string path) where T : class
    Parameters
    Type Name Description
    T obj

    The object instance to serialize and write. Must not be null.

    string path

    The absolute or relative file path to write the JSON to.

    Type Parameters
    Name Description
    T

    The type of object to serialize. Must be a reference type and must be serializable by the ScyllaSerialization engine (i.e., decorated with the appropriate serialization attributes, or a type with built-in support).

    Exceptions
    Type Condition
    FileException

    Thrown when serialization or writing fails.

    SaveToFile<T>(T, string, SerializationSettings)

    Serializes obj to JSON using the ScyllaSerialization engine with the specified serialization settings and writes the resulting JSON text to the specified file path, overwriting any existing file. Parent directories are created as needed.

    Declaration
    public static void SaveToFile<T>(this T obj, string path, SerializationSettings settings) where T : class
    Parameters
    Type Name Description
    T obj

    The object instance to serialize and write. Must not be null.

    string path

    The absolute or relative file path to write the JSON to.

    SerializationSettings settings

    The SerializationSettings controlling serialization behavior, such as pretty-printing, null value handling, and type discrimination.

    Type Parameters
    Name Description
    T

    The type of object to serialize. Must be a reference type and must be serializable by the ScyllaSerialization engine.

    Exceptions
    Type Condition
    FileException

    Thrown when serialization or writing fails.

    See Also

    ScyllaFileUtil
    FileSettings
    ImageFileSettings
    In this article
    Back to top Scylla Framework - Core Module API Documentation