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 ArrayUtil

    Provides utility methods for working with arrays, including dynamic resizing, capacity management, searching, sorting, and element manipulation.

    Inheritance
    object
    ArrayUtil
    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
    Assembly: ScyllaCore.dll
    Syntax
    public static class ArrayUtil
    Remarks

    This class is designed for scenarios where arrays are used as backing stores that need to grow on demand without incurring frequent small reallocations. Growth strategies follow an amortized doubling pattern: when the current length is insufficient, the backing array is grown to at least twice its current size (or to the required minimum, whichever is larger). This keeps the average cost of a growth operation O(1) amortized.

    Most methods treat a null or zero-length array as equivalent to an empty backing store, allocating a new array when necessary rather than throwing. Exceptions are only raised for logically invalid arguments such as negative indices or sizes.

    For higher-level collection operations - such as shuffling, dequeuing, or priority ordering - see CollectionUtil and the data-structure types under Scylla.Core.Structures.

    Fields

    DefaultCapacity

    The default initial capacity used when allocating a new backing array without an explicit minimum size. Applied by EnsureCapacity<T>(ref T[], int) and ResizeIfNecessary<T>(ref T[], int) when the input array is null or empty and no larger minimum is required.

    Declaration
    public const int DefaultCapacity = 10
    Field Value
    Type Description
    int

    Methods

    Clear<T>(T[])

    Clears all elements in the array to their default value without reallocating. For reference types, this sets elements to null. For value types, this sets elements to their default value.

    Declaration
    public static void Clear<T>(T[] array)
    Parameters
    Type Name Description
    T[] array

    The array to clear.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Clear<T>(T[], int, int)

    Clears a range of elements in the array to their default value without reallocating.

    Declaration
    public static void Clear<T>(T[] array, int startIndex, int count)
    Parameters
    Type Name Description
    T[] array

    The array to clear.

    int startIndex

    The starting index of the range to clear.

    int count

    The number of elements to clear.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if startIndex is negative, count is negative, or the range exceeds the array bounds.

    Contains<T>(T[], T)

    Determines whether the array contains the specified element.

    Declaration
    public static bool Contains<T>(T[] array, T item)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    T item

    The item to search for.

    Returns
    Type Description
    bool

    True if the item is found, otherwise false.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    CopyTo<T>(T[], ref T[])

    Copies elements from the source array to the destination array. The destination array will be resized if necessary.

    Declaration
    public static void CopyTo<T>(T[] source, ref T[] destination)
    Parameters
    Type Name Description
    T[] source

    The source array to copy from.

    T[] destination

    A reference to the destination array.

    Type Parameters
    Name Description
    T

    The type of elements in the arrays.

    Copy<T>(T[])

    Creates a shallow copy of the array.

    Declaration
    public static T[] Copy<T>(T[] source)
    Parameters
    Type Name Description
    T[] source

    The source array to copy.

    Returns
    Type Description
    T[]

    A new array containing copies of all elements, or null if source is null.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    CountWhere<T>(T[], Predicate<T>)

    Counts the number of elements in the array that match the conditions defined by the specified predicate.

    Declaration
    public static int CountWhere<T>(T[] array, Predicate<T> match)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    Predicate<T> match

    The predicate that defines the conditions to count.

    Returns
    Type Description
    int

    The number of elements that match the predicate.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if match is null.

    EnsureCapacity<T>(ref T[], int)

    Ensures the array has at least the specified minimum capacity, growing it if necessary while preserving existing elements.

    Declaration
    public static void EnsureCapacity<T>(ref T[] array, int minCapacity)
    Parameters
    Type Name Description
    T[] array

    A reference to the array to conditionally grow. May be null; a new array will be allocated in that case.

    int minCapacity

    The minimum number of elements the array must be able to hold after this call. Must be non-negative.

    Type Parameters
    Name Description
    T

    The element type stored in the array.

    Remarks

    When the current array length is less than minCapacity, the array is reallocated to max(array.Length * 2, minCapacity), amortizing the cost of repeated calls. Existing elements are preserved by Array.Resize.

    If the array is null or empty, a new array is allocated to max(DefaultCapacity, minCapacity) so that at least DefaultCapacity slots are available for future additions.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown when minCapacity is negative.

    Exists<T>(T[], Predicate<T>)

    Determines whether the array contains elements that match the conditions defined by the specified predicate.

    Declaration
    public static bool Exists<T>(T[] array, Predicate<T> match)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    Predicate<T> match

    The predicate that defines the conditions to search for.

    Returns
    Type Description
    bool

    True if one or more elements match the predicate, otherwise false.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if match is null.

    Fill<T>(T[], T)

    Fills the entire array with the specified value.

    Declaration
    public static void Fill<T>(T[] array, T value)
    Parameters
    Type Name Description
    T[] array

    The array to fill.

    T value

    The value to fill the array with.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Fill<T>(T[], T, int, int)

    Fills a range of elements in the array with the specified value.

    Declaration
    public static void Fill<T>(T[] array, T value, int startIndex, int count)
    Parameters
    Type Name Description
    T[] array

    The array to fill.

    T value

    The value to fill with.

    int startIndex

    The starting index of the range to fill.

    int count

    The number of elements to fill.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if startIndex is negative, count is negative, or the range exceeds the array bounds.

    FindAll<T>(T[], Predicate<T>)

    Retrieves all elements that match the conditions defined by the specified predicate.

    Declaration
    public static T[] FindAll<T>(T[] array, Predicate<T> match)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    Predicate<T> match

    The predicate that defines the conditions to search for.

    Returns
    Type Description
    T[]

    An array containing all elements that match the conditions, or an empty array if no matches are found.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if match is null.

    FindIndex<T>(T[], Predicate<T>)

    Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the first occurrence within the array.

    Declaration
    public static int FindIndex<T>(T[] array, Predicate<T> match)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    Predicate<T> match

    The predicate that defines the conditions to search for.

    Returns
    Type Description
    int

    The zero-based index of the first occurrence, or -1 if no match is found.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if match is null.

    FindLastIndex<T>(T[], Predicate<T>)

    Searches for an element that matches the conditions defined by the specified predicate, and returns the zero-based index of the last occurrence within the array.

    Declaration
    public static int FindLastIndex<T>(T[] array, Predicate<T> match)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    Predicate<T> match

    The predicate that defines the conditions to search for.

    Returns
    Type Description
    int

    The zero-based index of the last occurrence, or -1 if no match is found.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if match is null.

    Find<T>(T[], Predicate<T>)

    Searches for an element that matches the conditions defined by the specified predicate, and returns the first occurrence within the array.

    Declaration
    public static T Find<T>(T[] array, Predicate<T> match)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    Predicate<T> match

    The predicate that defines the conditions to search for.

    Returns
    Type Description
    T

    The first element that matches the conditions, or the default value of T if no match is found.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if match is null.

    GrowBy<T>(ref T[], int)

    Grows the array by the specified additional capacity.

    Declaration
    public static void GrowBy<T>(ref T[] array, int additionalCapacity)
    Parameters
    Type Name Description
    T[] array

    A reference to the array to grow.

    int additionalCapacity

    The number of additional elements to add to the capacity.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if additionalCapacity is negative.

    IndexOf<T>(T[], T)

    Searches for the specified element and returns the index of its first occurrence.

    Declaration
    public static int IndexOf<T>(T[] array, T item)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    T item

    The item to search for.

    Returns
    Type Description
    int

    The zero-based index of the first occurrence, or -1 if not found.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    LastIndexOf<T>(T[], T)

    Searches for the specified element and returns the index of its last occurrence.

    Declaration
    public static int LastIndexOf<T>(T[] array, T item)
    Parameters
    Type Name Description
    T[] array

    The array to search.

    T item

    The item to search for.

    Returns
    Type Description
    int

    The zero-based index of the last occurrence, or -1 if not found.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    ResizeIfNecessary<T>(ref T[], int)

    Ensures the array is large enough to be indexed at requiredIndex, growing it if the current length is insufficient.

    Declaration
    public static void ResizeIfNecessary<T>(ref T[] array, int requiredIndex)
    Parameters
    Type Name Description
    T[] array

    A reference to the array to conditionally grow. May be null; a new array will be allocated in that case.

    int requiredIndex

    The zero-based index that must be a valid position after this call. Must be non-negative.

    Type Parameters
    Name Description
    T

    The element type stored in the array.

    Remarks

    When growth is needed, the new length is set to requiredLength * 2 where requiredLength = requiredIndex + 1, providing room for subsequent writes without immediately requiring another reallocation.

    If the array is null or empty, a new array is allocated to max(DefaultCapacity, requiredLength + DefaultCapacity).

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown when requiredIndex is negative.

    Reverse<T>(T[])

    Reverses the order of all elements in the array.

    Declaration
    public static void Reverse<T>(T[] array)
    Parameters
    Type Name Description
    T[] array

    The array to reverse.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Reverse<T>(T[], int, int)

    Reverses the order of elements in the specified range of the array.

    Declaration
    public static void Reverse<T>(T[] array, int startIndex, int count)
    Parameters
    Type Name Description
    T[] array

    The array containing elements to reverse.

    int startIndex

    The starting index of the range to reverse.

    int count

    The number of elements to reverse.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if startIndex is negative, count is negative, or the range exceeds the array bounds.

    Sort<T>(T[])

    Sorts the elements in the array using the default comparer.

    Declaration
    public static void Sort<T>(T[] array) where T : IComparable<T>
    Parameters
    Type Name Description
    T[] array

    The array to sort.

    Type Parameters
    Name Description
    T

    The type of elements in the array. Must implement IComparable<T>.

    Sort<T>(T[], IComparer<T>)

    Sorts the elements in the array using the specified comparer.

    Declaration
    public static void Sort<T>(T[] array, IComparer<T> comparer)
    Parameters
    Type Name Description
    T[] array

    The array to sort.

    IComparer<T> comparer

    The comparer to use when comparing elements.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if comparer is null.

    Sort<T>(T[], Comparison<T>)

    Sorts the elements in the array using the specified comparison delegate.

    Declaration
    public static void Sort<T>(T[] array, Comparison<T> comparison)
    Parameters
    Type Name Description
    T[] array

    The array to sort.

    Comparison<T> comparison

    The comparison delegate to use when comparing elements.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if comparison is null.

    Sort<T>(T[], int, int)

    Sorts a range of elements in the array using the default comparer.

    Declaration
    public static void Sort<T>(T[] array, int startIndex, int count) where T : IComparable<T>
    Parameters
    Type Name Description
    T[] array

    The array containing the range to sort.

    int startIndex

    The starting index of the range to sort.

    int count

    The number of elements to sort.

    Type Parameters
    Name Description
    T

    The type of elements in the array. Must implement IComparable<T>.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if startIndex is negative, count is negative, or the range exceeds the array bounds.

    Swap<T>(T[], int, int)

    Swaps two elements at the specified indices in the array.

    Declaration
    public static void Swap<T>(T[] array, int indexA, int indexB)
    Parameters
    Type Name Description
    T[] array

    The array containing elements to swap.

    int indexA

    The index of the first element.

    int indexB

    The index of the second element.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentNullException

    Thrown if array is null.

    ArgumentOutOfRangeException

    Thrown if either index is out of bounds.

    TrimExcess<T>(ref T[], int)

    Shrinks the array to the exact size needed, removing excess capacity. This is useful when the array has been pre-allocated with extra capacity that is no longer needed.

    Declaration
    public static void TrimExcess<T>(ref T[] array, int usedCount)
    Parameters
    Type Name Description
    T[] array

    A reference to the array to trim.

    int usedCount

    The number of elements actually in use.

    Type Parameters
    Name Description
    T

    The type of elements in the array.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if usedCount is negative.

    See Also

    CollectionUtil
    In this article
    Back to top Scylla Framework - Core Module API Documentation