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 ProceduralMapGenerator

    Main public API for procedural grid-based map generation. Provides eight distinct algorithms that operate in-place on ScyllaSquareGrid<TCell>, ScyllaHexGrid<TCell>, or ScyllaTriGrid<TCell> instances and return a MapGenResult<TCoord> containing rooms, corridors, connected-component counts, and suggested spawn points.

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

    All algorithms require a pre-created, correctly sized grid passed by reference. Each method fills the grid with WallValue before carving, so prior grid contents are always discarded.

    Available algorithms:

    • DrunkardWalk(ScyllaSquareGrid<int>, DrunkardWalkSettings, MapGenSettings, IRandomSource) - random-walker cave carving with configurable multi-walker dynamics and chunk carving. Supports square and hex grids.
    • CellularAutomata(ScyllaSquareGrid<int>, CellularAutomataSettings, MapGenSettings, IRandomSource) - randomized initial fill followed by iterative birth/death rules producing organic cave shapes. Supports square and hex grids.
    • BSP(ScyllaSquareGrid<int>, BSPSettings, MapGenSettings, IRandomSource) - Binary Space Partitioning that recursively splits the grid, places one room per leaf partition, and connects sibling rooms with L-shaped or winding corridors. Square grids only.
    • RoomAndCorridor(ScyllaSquareGrid<int>, RoomCorridorSettings, MapGenSettings, IRandomSource) - random room scatter with MST-based corridor connectivity and optional extra loop edges. Supports square and hex grids.
    • NoiseThreshold(ScyllaSquareGrid<int>, NoiseThresholdSettings, MapGenSettings, IRandomSource) - coherent noise evaluation thresholded to binary wall/floor output. Supports square, hex, and triangle grids.
    • Maze(ScyllaSquareGrid<int>, MazeSettings, MapGenSettings, IRandomSource) - randomized DFS (Recursive Backtracker) perfect maze with optional loop creation and dead-end removal. Square grids only.
    • MazeWithRooms(ScyllaSquareGrid<int>, MazeRoomSettings, MapGenSettings, IRandomSource) - maze generation followed by rectangular room carving; multiple RoomGroup entries allow mixing room sizes. Square grids only.
    • VoronoiRegions(ScyllaSquareGrid<int>, VoronoiRegionSettings, MapGenSettings, IRandomSource) - Poisson-disk-sampled seed points used to partition the grid into Voronoi regions; floor is carved within a configurable fraction of each region's radius. Supports square, hex, and triangle grids.
    • Floorplan(ScyllaSquareGrid<int>, FloorplanSettings, MapGenSettings, IRandomSource) - Squarified Treemap building floorplan generator; packs tightly-filled rooms covering the entire interior with no large voids, connected by door openings and minimal corridors. Square grids only.

    Post-processing (connectivity repair, dead-end removal, room detection, spawn-point selection) is controlled by MapGenSettings flags and is automatically applied at the end of each algorithm. For finer control, the ProceduralMapPostProcessor methods can be called independently after generation.

    All algorithms are fully deterministic when the same IRandomSource seed is used. The grid is never heap-allocated inside these methods; callers own both the grid and the returned MapGenResult<TCoord>.

    Methods

    BSP(ScyllaSquareGrid<int>, BSPSettings, MapGenSettings, IRandomSource)

    Generates a map using Binary Space Partitioning on a square grid. Iteratively splits the grid into partitions, places rooms in leaf partitions, and carves L-shaped corridors between sibling rooms. Square grids only.

    Declaration
    public static MapGenResult<SquareCoord> BSP(ScyllaSquareGrid<int> grid, BSPSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place.

    BSPSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings.

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result metadata.

    CellularAutomata(ScyllaHexGrid<int>, CellularAutomataSettings, MapGenSettings, IRandomSource)

    Generates a map using the Cellular Automata algorithm on a hex grid. Random initial fill followed by iterative birth/death rules produces organic cave-like shapes. Uses 6-neighbor adjacency and double-buffering to prevent evaluation-order artifacts.

    Declaration
    public static MapGenResult<HexCoord> CellularAutomata(ScyllaHexGrid<int> grid, CellularAutomataSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaHexGrid<int> grid

    The grid to modify in-place.

    CellularAutomataSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<HexCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    Remarks

    Cells with fewer than six in-bounds neighbors are treated as border cells and are permanently set to WallValue. The UseVonNeumann flag is ignored for hex grids because hex grids always use 6-neighbor adjacency.

    CellularAutomata(ScyllaSquareGrid<int>, CellularAutomataSettings, MapGenSettings, IRandomSource)

    Generates a map using the Cellular Automata algorithm on a square grid. Random initial fill followed by iterative birth/death rules produces organic cave-like shapes. Uses double-buffering to prevent evaluation-order artifacts.

    Declaration
    public static MapGenResult<SquareCoord> CellularAutomata(ScyllaSquareGrid<int> grid, CellularAutomataSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place.

    CellularAutomataSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings.

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result metadata.

    DrunkardWalk(ScyllaHexGrid<int>, DrunkardWalkSettings, MapGenSettings, IRandomSource)

    Generates a map using the Drunkard's Walk algorithm on a hex grid. Multiple walkers carve floor cells with optional hex-radius chunk carving and forward bias.

    Declaration
    public static MapGenResult<HexCoord> DrunkardWalk(ScyllaHexGrid<int> grid, DrunkardWalkSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaHexGrid<int> grid

    The grid to modify in-place. Will be filled with walls first.

    DrunkardWalkSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<HexCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    Remarks

    The target floor cell count is computed from the grid's rectangular bounding area (Width * Height), which slightly overcounts valid hex cells. As a result, the algorithm may terminate before reaching the exact TargetFillRatio for non-rectangular hex layouts. Walkers that move out of bounds attempt one random fallback direction before skipping their step for that iteration.

    DrunkardWalk(ScyllaSquareGrid<int>, DrunkardWalkSettings, MapGenSettings, IRandomSource)

    Generates a map using the Drunkard's Walk algorithm on a square grid. Multiple walkers carve floor cells with optional chunk carving and forward bias.

    Declaration
    public static MapGenResult<SquareCoord> DrunkardWalk(ScyllaSquareGrid<int> grid, DrunkardWalkSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place. Will be filled with walls first.

    DrunkardWalkSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    Floorplan(ScyllaSquareGrid<int>, FloorplanSettings, MapGenSettings, IRandomSource)

    Generates a building-style floorplan map on a square grid using the Squarified Treemap technique. Rooms are packed tightly to fill the entire interior with no large voids, separated by thin 1-2 cell shared walls and connected by door openings. Short L-shaped corridors are carved only when two rooms are not wall-adjacent. Square grids only.

    Declaration
    public static MapGenResult<SquareCoord> Floorplan(ScyllaSquareGrid<int> grid, FloorplanSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place. Will be filled with walls first.

    FloorplanSettings settings

    Algorithm-specific floorplan settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    Remarks

    The algorithm runs in three phases:

    1. A list of target room areas is generated with a deliberate large/medium/small size mix (governed by LargeRoomWeight, MediumRoomWeight, SmallRoomWeight) summing to the total interior area so every cell is assigned to a room.
    2. The squarify heuristic packs those areas into the interior rectangle as sub-rectangles, choosing row/column splits to keep aspect ratios close to AspectRatioTarget. The result tiles the interior with no wasted space.
    3. Each rectangle is inset by WallThickness on its top and left edges; its right and bottom edges receive an additional 1-cell inset with probability ThickWallChance, producing a mix of 1-cell and 2-cell shared walls. An MST over wall-adjacent room pairs guarantees full connectivity via door openings that span the actual gap width. DoorLoopRatio adds extra connections for loops.

    Maze(ScyllaSquareGrid<int>, MazeSettings, MapGenSettings, IRandomSource)

    Generates a perfect maze using the Recursive Backtracker (randomized DFS) algorithm on a square grid. Uses a 2-cell stride pattern: odd-indexed cells are passages, even-indexed cells are walls. Optionally removes dead ends and creates loops for an imperfect maze. Square grids only.

    Declaration
    public static MapGenResult<SquareCoord> Maze(ScyllaSquareGrid<int> grid, MazeSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place. Should ideally have odd dimensions for clean results.

    MazeSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings.

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result metadata.

    MazeWithRooms(ScyllaSquareGrid<int>, MazeRoomSettings, MapGenSettings, IRandomSource)

    Generates a maze and then carves rectangular rooms into it. The maze is generated first using recursive backtracking, then rooms are placed at random non-overlapping positions by carving floor cells over the maze structure. Multiple RoomGroup entries allow mixing different room sizes; all groups share the same overlap-check list so rooms never overlap. Post-processing ensures all rooms are connected to the maze network. Square grids only. Grid dimensions should be odd for clean maze structure.

    Declaration
    public static MapGenResult<SquareCoord> MazeWithRooms(ScyllaSquareGrid<int> grid, MazeRoomSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place. Will be filled with walls first.

    MazeRoomSettings settings

    Settings controlling maze parameters and room placement.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    NoiseThreshold(ScyllaHexGrid<int>, NoiseThresholdSettings, MapGenSettings, IRandomSource)

    Generates a map by thresholding coherent noise values on a hex grid. Evaluates noise at each cell's world-space position using Fractal2D(float, float, NoiseSettings) when a fractal type is configured, or Evaluate2D(float, float, NoiseAlgorithm) otherwise.

    Declaration
    public static MapGenResult<HexCoord> NoiseThreshold(ScyllaHexGrid<int> grid, NoiseThresholdSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaHexGrid<int> grid

    The grid to modify in-place.

    NoiseThresholdSettings settings

    Algorithm-specific settings (noise config, threshold, invert).

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output (used to derive noise seed).

    Returns
    Type Description
    MapGenResult<HexCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    NoiseThreshold(ScyllaSquareGrid<int>, NoiseThresholdSettings, MapGenSettings, IRandomSource)

    Generates a map by thresholding coherent noise values on a square grid. Delegates to Fill2D(float[], int, int, NoiseSettings, float, float) and converts the resulting float array to binary wall/floor output based on the threshold. Supports all noise algorithms and fractal types via NoiseSettings.

    Declaration
    public static MapGenResult<SquareCoord> NoiseThreshold(ScyllaSquareGrid<int> grid, NoiseThresholdSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place.

    NoiseThresholdSettings settings

    Algorithm-specific settings (noise config, threshold, invert).

    MapGenSettings genSettings

    Common generation settings.

    IRandomSource rng

    Random source for deterministic output (used to derive noise seed).

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result metadata.

    NoiseThreshold(ScyllaTriGrid<int>, NoiseThresholdSettings, MapGenSettings, IRandomSource)

    Generates a map by thresholding coherent noise values on a triangle grid. Evaluates noise at each triangle cell's world-space centroid position. Each grid cell contains two triangles (downward and upward orientation) that are evaluated and classified independently.

    Declaration
    public static MapGenResult<TriCoord> NoiseThreshold(ScyllaTriGrid<int> grid, NoiseThresholdSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaTriGrid<int> grid

    The grid to modify in-place.

    NoiseThresholdSettings settings

    Algorithm-specific settings (noise config, threshold, invert).

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output (used to derive noise seed).

    Returns
    Type Description
    MapGenResult<TriCoord>

    Generation result with component count. Triangle grids have limited post-processing: connectivity repair, dead-end removal, room detection, and spawn-point search are not performed. Only the connected-component count is populated via manual flood fill.

    RoomAndCorridor(ScyllaHexGrid<int>, RoomCorridorSettings, MapGenSettings, IRandomSource)

    Generates a map using random room placement and MST-based corridor connectivity on a hex grid. Places hex-circle rooms at random positions, computes a minimum spanning tree for guaranteed connectivity, optionally adds extra loop edges, and carves straight hex-line corridors.

    Declaration
    public static MapGenResult<HexCoord> RoomAndCorridor(ScyllaHexGrid<int> grid, RoomCorridorSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaHexGrid<int> grid

    The grid to modify in-place.

    RoomCorridorSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<HexCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    Remarks

    Room shapes are hex-radius circles rather than rectangles. The radius is derived from MinRoomWidth / MinRoomHeight and MaxRoomWidth / MaxRoomHeight (minimum of the width/height pair is used for each bound). Corridor widening uses hex-range expansion rather than L-shaped segments. The CorridorStyle setting from RoomCorridorSettings has no effect on hex grids; corridors are always straight hex lines.

    RoomAndCorridor(ScyllaSquareGrid<int>, RoomCorridorSettings, MapGenSettings, IRandomSource)

    Generates a map using random room placement and MST-based corridor connectivity on a square grid. Places rooms at random positions, computes a minimum spanning tree for guaranteed connectivity, optionally adds extra edges for loops, and carves L-shaped corridors.

    Declaration
    public static MapGenResult<SquareCoord> RoomAndCorridor(ScyllaSquareGrid<int> grid, RoomCorridorSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place.

    RoomCorridorSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings.

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result metadata.

    VoronoiRegions(ScyllaHexGrid<int>, VoronoiRegionSettings, MapGenSettings, IRandomSource)

    Generates a map using Voronoi region partitioning on a hex grid. Uses PoissonDiskSampler to place evenly-spaced seed points, assigns each hex cell to its nearest seed using hex distance, and carves floor within a configurable fraction of each region's radius. Optionally connects all regions via an MST of straight hex-line corridors.

    Declaration
    public static MapGenResult<HexCoord> VoronoiRegions(ScyllaHexGrid<int> grid, VoronoiRegionSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaHexGrid<int> grid

    The grid to modify in-place.

    VoronoiRegionSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<HexCoord>

    Generation result with detected rooms, corridors, components, and spawn points.

    VoronoiRegions(ScyllaSquareGrid<int>, VoronoiRegionSettings, MapGenSettings, IRandomSource)

    Generates a map using Voronoi region partitioning on a square grid. Uses PoissonDiskSampler to place evenly-spaced seed points, assigns each cell to its nearest seed, and carves floor within a configurable fraction of each region's radius. Optionally connects all regions.

    Declaration
    public static MapGenResult<SquareCoord> VoronoiRegions(ScyllaSquareGrid<int> grid, VoronoiRegionSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaSquareGrid<int> grid

    The grid to modify in-place.

    VoronoiRegionSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings.

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<SquareCoord>

    Generation result metadata.

    VoronoiRegions(ScyllaTriGrid<int>, VoronoiRegionSettings, MapGenSettings, IRandomSource)

    Generates a map using Voronoi region partitioning on a triangle grid. Evaluates the nearest Poisson-disk-sampled seed point at each triangle cell's world-space centroid using Euclidean distance, and carves floor within a configurable fraction of each region's maximum radius.

    Declaration
    public static MapGenResult<TriCoord> VoronoiRegions(ScyllaTriGrid<int> grid, VoronoiRegionSettings settings, MapGenSettings genSettings, IRandomSource rng)
    Parameters
    Type Name Description
    ScyllaTriGrid<int> grid

    The grid to modify in-place.

    VoronoiRegionSettings settings

    Algorithm-specific settings.

    MapGenSettings genSettings

    Common generation settings (cell values, post-processing flags).

    IRandomSource rng

    Random source for deterministic output.

    Returns
    Type Description
    MapGenResult<TriCoord>

    Generation result with component count. Triangle grids have limited post-processing: connectivity repair, dead-end removal, room detection, and spawn-point search are not performed. Only the connected-component count is populated via manual flood fill.

    See Also

    ProceduralMapPostProcessor
    ProceduralMapOverlay
    MapGenSettings
    MapGenResult<TCoord>
    In this article
    Back to top Scylla Framework - Core Module API Documentation