Scylla Framework
  • API Reference
Search Results for

    Show / Hide Table of Contents
    • Scylla.Console.TextMode
      • IConsoleScreen
      • TextModeDebugConsoleDisplay
      • TicTacToeCommand
      • TicTacToeScreen
    • Scylla.TextMode
      • ANSIAttributeParser
      • ANSIColor
      • ANSISGRAttributes
      • AmbientEffectBase
      • BackgroundBlendMode
      • BoxStyle
      • BoxStyleCharacters
      • BoxStyleCharacters.BoxChars
      • CRTSettings
      • Cell
      • CellAttributes
      • CellAttributesExtensions
      • CellBuffer
      • CellBufferRenderer
      • CellGrid
      • CellMask
      • CellPosition
      • CellRange
      • CellRect
      • ColorCycleEffect
      • ColorCycleEffectPreset
      • CrossFadeEffect
      • CursorStyle
      • DecodeEffect
      • DecodeEffectPreset
      • DigitalRainEffect
      • DigitalRainEffectPreset
      • EffectsSettings
      • FadeEffect
      • FadeEffectPreset
      • FlickerEffect
      • FlickerEffectPreset
      • GlitchEffect
      • GlitchEffectPreset
      • GlyphAtlasCache
      • GridSettings
      • IAutoCompleter
      • IInputHistory
      • ITextEffect
      • ITextEffectContext
      • ITextModeGridProvider
      • ITextModePointerMapper
      • ITextModeRenderSource
      • ITextModeViewHost
      • IVTParserHandler
      • InputHistory
      • MaskTransitionEffect
      • MouseEncodingMode
      • MouseTrackingMode
      • PackedGlyphData
      • PulseEffect
      • PulseEffectPreset
      • PushEffect
      • PushEffectPreset
      • SDFSettings
      • ScrollbackAttributeRun
      • ScrollbackLine
      • ScyllaTextMode
      • ScyllaTextMode.Meta
      • ScyllaTextModeConfiguration
      • SlideInEffect
      • SlideInEffectPreset
      • StaticTuneInEffect
      • StaticTuneInEffectPreset
      • TerminalCLI
      • TerminalEmulator
      • TerminalGridRenderer
      • TerminalInputEncoder
      • TerminalMouseButton
      • TerminalScrollbackBuffer
      • TerminalSettings
      • TextAlignment
      • TextEffectBase
      • TextEffectCompletedEvent
      • TextEffectDirection
      • TextEffectExtensions
      • TextEffectMaskPattern
      • TextEffectPreset
      • TextEffectPushMode
      • TextEffectSequencer
      • TextEffectStartedEvent
      • TextEffectState
      • TextEffectTimeMode
      • TextEffects
      • TextModeCellBorder
      • TextModeColorDefaults
      • TextModeColorScheme
      • TextModeColorSet
      • TextModeConfigurationChangedEvent
      • TextModeConsole
      • TextModeConstants
      • TextModeEffectPlayer
      • TextModeGridCapture
      • TextModeLayoutUtil
      • TextModeMaterials
      • TextModeMouseReporter
      • TextModeMouseReportingEvent
      • TextModeSelectionChangedEvent
      • TextModeSelectionEndedEvent
      • TextModeSelectionManager
      • TextModeSelectionStartedEvent
      • TextModeTerminal
      • TextModeTerminalColorTheme
      • TextModeTerminalHost
      • TextModeTerminalSettings
      • TextModeTerminalStartMode
      • TextModeThemeBackground
      • TextModeThemeChangedEvent
      • TextModeThemeRemapper
      • TextModeThemes
      • TextModeView
      • TextWrapMode
      • ThemeSettings
      • TransitionEffectBase
      • TransitionEffectPreset
      • TwinkleEffect
      • TwinkleEffectPreset
      • TypewriterCharacterRevealedEvent
      • TypewriterEffect
      • TypewriterEffectPreset
      • UITextModeView
      • VTParser
      • WaveEffect
      • WaveEffectPreset
    • Scylla.TextMode.CRT
      • CRTBeam
      • CRTBeamClock
      • CRTBeamScanDirection
      • CRTBeamStatus
      • CRTCalibrationPattern
      • CRTCurvatureShape
      • CRTGeometry
      • CRTHDR
      • CRTHDRDisplay
      • CRTHDRTarget
      • CRTHorizontalKernel
      • CRTImageRegion
      • CRTMaskType
      • CRTQualityTier
      • CRTScaleMode
      • CRTSignalStandard
      • CRTSignalType
      • ITextModeCRTCameraEffect
      • ITextModeCRTHDRDisplaySource
      • TextModeCRTBeam
      • TextModeCRTCalibration
      • TextModeCRTCameraEffects
      • TextModeCRTConstants
      • TextModeCRTDriver
      • TextModeCRTHDR
      • TextModeCRTImageRenderer
      • TextModeCRTMonitor
      • TextModeCRTPreset
      • TextModeCRTPresetRegistry
      • TextModeCRTScreen
      • TextModeCRTSettings
      • TextModeCRTTube
    • Scylla.TextMode.Editor
      • CellGridPreviewWidget
      • ColorPaletteWidget
      • ITextModeCRTCameraSetupProvider
      • ScyllaTextModeConfigurationEditor
      • ScyllaTextModeDependencyProvider
      • ScyllaTextModeEditor
      • ScyllaTextModeMenuItems
      • ScyllaTextModeShaderProvider
      • TextModeCRTCameraSetup
      • TextModeCRTCameraStatus
      • TextModeCRTDriverEditor
      • TextModeCRTMonitorEditor
      • TextModeCRTPresetEditor
      • TextModeCRTPresetGenerator
      • TextModeColorAssetGenerator
      • TextModeColorPaletteDefaults
      • TextModeTerminalHostEditor
      • TextModeThemeField
      • TextModeViewEditor
      • TextModeViewEditorBase
      • UITextModeViewEditor
    • Scylla.TextMode.URP
      • CRTQualityTierParameter
      • TextModeCRTInjectionPoint
      • TextModeCRTPresetParameter
      • TextModeCRTRendererFeature
      • TextModeCRTVolume

    Class ScyllaTextModeConfiguration

    Configuration asset for the Scylla TextMode module. Provides settings for grid layout, SDF rendering, and terminal emulation.

    Inheritance
    object
    Object
    ScriptableObject
    ScyllaConfiguration
    ScyllaTextModeConfiguration
    Inherited Members
    ScyllaConfiguration.CONFIG_FOLDER
    ScyllaConfiguration.LABEL_CONFIG_FILES
    ScyllaConfiguration.LABEL_CONFIG_FILE
    ScyllaConfiguration.LABEL_GLOBAL
    ScyllaConfiguration.LABEL_CORE
    ScyllaConfiguration.LABEL_CONFIG_FILES_IN_DBG
    ScyllaConfiguration.LABEL_CONFIG_FILES_IN_PRD
    ScyllaConfiguration.LABEL_CONFIG_FILE_IN_DBG
    ScyllaConfiguration.LABEL_CONFIG_FILE_IN_PRD
    ScyllaConfiguration.LABEL_VALIDATION
    ScyllaConfiguration.LABEL_ERROR
    ScyllaConfiguration.LABEL_WARNING
    ScyllaConfiguration.LABEL_METADATA
    ScyllaConfiguration.LABEL_CONFIGURATION
    ScyllaConfiguration.LABEL_ACTIONS
    ScyllaConfiguration.LABEL_VALIDATE
    ScyllaConfiguration.LABEL_RESET_TO_DEFAULTS
    ScyllaConfiguration.LABEL_APPLY_NOW
    ScyllaConfiguration.LABEL_RESOURCE_PATH
    ScyllaConfiguration.LABEL_ASSET_PATH
    ScyllaConfiguration.LABEL_EXPORT_CONFIG_FILE
    ScyllaConfiguration.LABEL_TO_USER_DOCUMENTS
    ScyllaConfiguration.LABEL_TO_APP_FOLDER
    ScyllaConfiguration.MSG_RESET_CONFIRM_TITLE
    ScyllaConfiguration.MSG_RESET_CONFIRM_BODY
    ScyllaConfiguration.MSG_RESET_BUTTON
    ScyllaConfiguration.MSG_CANCEL_BUTTON
    ScyllaConfiguration.MSG_OK_BUTTON
    ScyllaConfiguration.MSG_VALIDATION_TITLE
    ScyllaConfiguration.MSG_EXPORT_CONFIG_TITLE
    ScyllaConfiguration.MSG_OVERWRITE_BUTTON
    ScyllaConfiguration.ConfigFileEnabledInDebugBuild
    ScyllaConfiguration.ConfigFileEnabledInProductionBuild
    ScyllaConfiguration.CreateConfigFile
    ScyllaConfiguration.ConfigurationName
    ScyllaConfiguration.Description
    ScyllaConfiguration.IsRuntimeCopy
    ScyllaConfiguration.RuntimeSource
    ScyllaConfiguration.CreateRuntimeCopy<T>(T)
    ScyllaConfiguration.ReleaseRuntimeCopy(ScyllaConfiguration)
    ScyllaConfiguration.IsConfigFileEnabledForCurrentBuild()
    ScyllaConfiguration.IsValid()
    ScyllaConfiguration.GetConfigFileBaseName()
    ScriptableObject.CreateInstance(string)
    ScriptableObject.CreateInstance(Type)
    ScriptableObject.CreateInstance<T>()
    Object.GetEntityId()
    Object.GetHashCode()
    Object.Equals(object)
    Object.InstantiateAsync<T>(T)
    Object.InstantiateAsync<T>(T, Transform)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int)
    Object.InstantiateAsync<T>(T, int, Transform)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion, CancellationToken)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, CancellationToken)
    Object.InstantiateAsync<T>(T, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion, InstantiateParameters, CancellationToken)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, InstantiateParameters, CancellationToken)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Scene)
    Object.Instantiate<T>(T, InstantiateParameters)
    Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsByType(Type)
    Object.FindObjectsByType(Type, FindObjectsInactive)
    Object.DontDestroyOnLoad(Object)
    Object.FindAnyObjectByType<T>()
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsByType<T>()
    Object.FindObjectsByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType(Type)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.ReferenceEquals(object, object)
    Namespace: Scylla.TextMode
    Assembly: ScyllaTextMode.dll
    Syntax
    [ScyllaCreateAsset("TextMode/TextMode Configuration", FileName = "Scylla TextMode Configuration")]
    public sealed class ScyllaTextModeConfiguration : ScyllaConfiguration

    Fields

    CONFIG_FILENAME

    Filename for auto-loading this configuration.

    Declaration
    public const string CONFIG_FILENAME = "Scylla TextMode Configuration"
    Field Value
    Type Description
    string

    DISPLAY_NAME

    Display name for this configuration type.

    Declaration
    public const string DISPLAY_NAME = "TextMode Settings"
    Field Value
    Type Description
    string

    GROUP_CRT

    Declaration
    public const string GROUP_CRT = "CRT"
    Field Value
    Type Description
    string

    GROUP_DEBUG

    Declaration
    public const string GROUP_DEBUG = "Debug"
    Field Value
    Type Description
    string

    GROUP_EFFECTS

    Declaration
    public const string GROUP_EFFECTS = "Effects"
    Field Value
    Type Description
    string

    GROUP_GRID

    Declaration
    public const string GROUP_GRID = "Grid"
    Field Value
    Type Description
    string

    GROUP_SDF

    Declaration
    public const string GROUP_SDF = "SDF"
    Field Value
    Type Description
    string

    GROUP_TERMINAL

    Declaration
    public const string GROUP_TERMINAL = "Terminal"
    Field Value
    Type Description
    string

    GROUP_THEME

    Declaration
    public const string GROUP_THEME = "Theme"
    Field Value
    Type Description
    string

    KEY_APPLY_THEME_TO_VIEWS

    Declaration
    public const string KEY_APPLY_THEME_TO_VIEWS = "ApplyThemeToViews"
    Field Value
    Type Description
    string

    KEY_BOLD_WEIGHT

    Declaration
    public const string KEY_BOLD_WEIGHT = "BoldWeight"
    Field Value
    Type Description
    string

    KEY_CRT_BEAM

    Declaration
    public const string KEY_CRT_BEAM = "BeamSimulation"
    Field Value
    Type Description
    string

    KEY_CRT_BEAM_ANTI_RETENTION

    Declaration
    public const string KEY_CRT_BEAM_ANTI_RETENTION = "BeamAntiRetention"
    Field Value
    Type Description
    string

    KEY_CRT_BEAM_CRT_RATE

    Declaration
    public const string KEY_CRT_BEAM_CRT_RATE = "BeamCRTRate"
    Field Value
    Type Description
    string

    KEY_CRT_BEAM_GAIN

    Declaration
    public const string KEY_CRT_BEAM_GAIN = "BeamGain"
    Field Value
    Type Description
    string

    KEY_CRT_BEAM_REFRESH_RATE

    Declaration
    public const string KEY_CRT_BEAM_REFRESH_RATE = "BeamRefreshRate"
    Field Value
    Type Description
    string

    KEY_CRT_BEAM_SCAN_DIRECTION

    Declaration
    public const string KEY_CRT_BEAM_SCAN_DIRECTION = "BeamScanDirection"
    Field Value
    Type Description
    string

    KEY_CRT_DEFAULT_PRESET

    Declaration
    public const string KEY_CRT_DEFAULT_PRESET = "DefaultPreset"
    Field Value
    Type Description
    string

    KEY_CRT_HDR_HEADROOM

    Declaration
    public const string KEY_CRT_HDR_HEADROOM = "HDRHeadroom"
    Field Value
    Type Description
    string

    KEY_CRT_HDR_MASK

    Declaration
    public const string KEY_CRT_HDR_MASK = "HDRMask"
    Field Value
    Type Description
    string

    KEY_CRT_HDR_MASK_BRIGHTNESS

    Declaration
    public const string KEY_CRT_HDR_MASK_BRIGHTNESS = "HDRMaskBrightness"
    Field Value
    Type Description
    string

    KEY_CRT_MAX_DELTA_TIME

    Declaration
    public const string KEY_CRT_MAX_DELTA_TIME = "MaxDeltaTime"
    Field Value
    Type Description
    string

    KEY_CRT_QUALITY_TIER

    Declaration
    public const string KEY_CRT_QUALITY_TIER = "QualityTier"
    Field Value
    Type Description
    string

    KEY_CRT_READABILITY_CLAMP

    Declaration
    public const string KEY_CRT_READABILITY_CLAMP = "ReadabilityClamp"
    Field Value
    Type Description
    string

    KEY_CURSOR_BLINK_RATE

    Declaration
    public const string KEY_CURSOR_BLINK_RATE = "CursorBlinkRate"
    Field Value
    Type Description
    string

    KEY_DEFAULT_AUTO_WRAP

    Declaration
    public const string KEY_DEFAULT_AUTO_WRAP = "DefaultAutoWrap"
    Field Value
    Type Description
    string

    KEY_DEFAULT_EFFECT_DURATION

    Declaration
    public const string KEY_DEFAULT_EFFECT_DURATION = "DefaultDuration"
    Field Value
    Type Description
    string

    KEY_DEFAULT_FONT_SIZE

    Declaration
    public const string KEY_DEFAULT_FONT_SIZE = "DefaultFontSize"
    Field Value
    Type Description
    string

    KEY_DEFAULT_LINE_HEIGHT

    Declaration
    public const string KEY_DEFAULT_LINE_HEIGHT = "DefaultLineHeight"
    Field Value
    Type Description
    string

    KEY_DEFAULT_PIXELS_PER_UNIT

    Declaration
    public const string KEY_DEFAULT_PIXELS_PER_UNIT = "DefaultPixelsPerUnit"
    Field Value
    Type Description
    string

    KEY_DEFAULT_VIEW_HEIGHT

    Declaration
    public const string KEY_DEFAULT_VIEW_HEIGHT = "DefaultViewHeight"
    Field Value
    Type Description
    string

    KEY_DEFAULT_VIEW_WIDTH

    Declaration
    public const string KEY_DEFAULT_VIEW_WIDTH = "DefaultViewWidth"
    Field Value
    Type Description
    string

    KEY_EFFECTS_ENABLED

    Declaration
    public const string KEY_EFFECTS_ENABLED = "EffectsEnabled"
    Field Value
    Type Description
    string

    KEY_GLOBAL_SPEED_MULTIPLIER

    Declaration
    public const string KEY_GLOBAL_SPEED_MULTIPLIER = "GlobalSpeedMultiplier"
    Field Value
    Type Description
    string

    KEY_ITALIC_SHEAR

    Declaration
    public const string KEY_ITALIC_SHEAR = "ItalicShear"
    Field Value
    Type Description
    string

    KEY_LOG_RENDER_STATS

    Declaration
    public const string KEY_LOG_RENDER_STATS = "LogRenderStats"
    Field Value
    Type Description
    string

    KEY_MAX_CONCURRENT_EFFECTS

    Declaration
    public const string KEY_MAX_CONCURRENT_EFFECTS = "MaxConcurrentEffects"
    Field Value
    Type Description
    string

    KEY_PUBLISH_CHARACTER_EVENTS

    Declaration
    public const string KEY_PUBLISH_CHARACTER_EVENTS = "PublishCharacterEvents"
    Field Value
    Type Description
    string

    KEY_REDUCE_MOTION

    Declaration
    public const string KEY_REDUCE_MOTION = "ReduceMotion"
    Field Value
    Type Description
    string

    KEY_REMAP_ON_THEME_CHANGE

    Declaration
    public const string KEY_REMAP_ON_THEME_CHANGE = "RemapOnThemeChange"
    Field Value
    Type Description
    string

    KEY_SCROLLBACK_LINES

    Declaration
    public const string KEY_SCROLLBACK_LINES = "ScrollbackLines"
    Field Value
    Type Description
    string

    KEY_SHOW_GRID_OUTLINE

    Declaration
    public const string KEY_SHOW_GRID_OUTLINE = "ShowGridOutline"
    Field Value
    Type Description
    string

    KEY_SMOOTHING

    Declaration
    public const string KEY_SMOOTHING = "Smoothing"
    Field Value
    Type Description
    string

    KEY_TAB_STOP_INTERVAL

    Declaration
    public const string KEY_TAB_STOP_INTERVAL = "TabStopInterval"
    Field Value
    Type Description
    string

    KEY_TEXT_BLINK_RATE

    Declaration
    public const string KEY_TEXT_BLINK_RATE = "TextBlinkRate"
    Field Value
    Type Description
    string

    KEY_THEME_NAME

    Declaration
    public const string KEY_THEME_NAME = "ThemeName"
    Field Value
    Type Description
    string

    KEY_THRESHOLD

    Declaration
    public const string KEY_THRESHOLD = "Threshold"
    Field Value
    Type Description
    string

    KEY_TYPEWRITER_CPS

    Declaration
    public const string KEY_TYPEWRITER_CPS = "TypewriterCharactersPerSecond"
    Field Value
    Type Description
    string

    KEY_WRAP_MODE

    Declaration
    public const string KEY_WRAP_MODE = "WrapMode"
    Field Value
    Type Description
    string

    Properties

    CRT

    Gets the CRT display simulation defaults.

    Declaration
    public CRTSettings CRT { get; }
    Property Value
    Type Description
    CRTSettings

    Effects

    Gets the text effects settings.

    Declaration
    public EffectsSettings Effects { get; }
    Property Value
    Type Description
    EffectsSettings

    Grid

    Gets the grid layout settings.

    Declaration
    public GridSettings Grid { get; }
    Property Value
    Type Description
    GridSettings

    LogRenderStats

    Gets whether render statistics should be logged.

    Declaration
    public bool LogRenderStats { get; }
    Property Value
    Type Description
    bool

    SDF

    Gets the SDF rendering settings.

    Declaration
    public SDFSettings SDF { get; }
    Property Value
    Type Description
    SDFSettings

    ShowGridOutline

    Gets whether the grid outline should be shown in debug mode.

    Declaration
    public bool ShowGridOutline { get; }
    Property Value
    Type Description
    bool

    Terminal

    Gets the terminal emulation settings.

    Declaration
    public TerminalSettings Terminal { get; }
    Property Value
    Type Description
    TerminalSettings

    Theme

    Gets the color theme settings.

    Declaration
    public ThemeSettings Theme { get; }
    Property Value
    Type Description
    ThemeSettings

    Methods

    Apply()

    Pushes the current configuration values to the live runtime system. Override this method in derived classes to update module state whenever the configuration changes - for example, to reconfigure a logging sink, update a render pipeline setting, or resize an internal buffer.

    During Play Mode in the Unity Editor, the framework automatically schedules a deferred call to Apply whenever a field value changes in the Inspector (via the OnValidate callback), enabling live iteration without a domain reload. This method is also exposed as the "Apply Now" button in the custom Inspector.

    The base implementation does nothing. If a configuration's settings are only consumed at startup (e.g. Scylla.Core.Config.ScyllaCoreConfiguration), the override may remain empty.

    Declaration
    public override void Apply()
    Overrides
    Scylla.Core.Config.ScyllaConfiguration.Apply()

    ApplyConfigFileOverrides(ConfigFile)

    Reads property values from a loaded Scylla.Core.Util.File.ConfigFile and writes them into this configuration's serialized fields, effectively applying user or environment overrides on top of the Inspector-authored defaults.

    Override in derived classes to map specific config-file group/key pairs to their corresponding serialized fields. Only fields that are present in the config file should be updated; fields missing from the file should retain their current values. Return the count of properties that were successfully read and applied so callers can log accurate diagnostic information.

    The base implementation does nothing and returns 0. Subclasses that return null from Scylla.Core.Config.ScyllaConfiguration.GetConfigFileName() do not need to override this method.

    Declaration
    public override int ApplyConfigFileOverrides(ConfigFile configFile)
    Parameters
    Type Name Description
    ConfigFile configFile

    The Scylla.Core.Util.File.ConfigFile loaded by Scylla.Core.Config.ConfigFileManager for this configuration. Will not be null when called by the framework, but implementations should guard against it for robustness.

    Returns
    Type Description
    int

    The number of config-file properties that were successfully read and written to serialized fields. A return value of 0 means no overrides were applied.

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.ApplyConfigFileOverrides(Scylla.Core.Util.File.ConfigFile)

    ExportToConfigFile()

    Serializes the current values of this configuration's fields into a new Scylla.Core.Util.File.ConfigFile suitable for saving to disk.

    Override in derived classes to write each relevant serialized field into the appropriate group and key within the returned Scylla.Core.Util.File.ConfigFile. The resulting file is used both by the Inspector "Export Config File" action and by the auto-create mechanism in Scylla.Core.Config.ConfigFileManager. Group and key names must match those read in Scylla.Core.Config.ScyllaConfiguration.ApplyConfigFileOverrides(Scylla.Core.Util.File.ConfigFile).

    The base implementation returns an empty Scylla.Core.Util.File.ConfigFile with no groups. Subclasses that return null from Scylla.Core.Config.ScyllaConfiguration.GetConfigFileName() do not need to override this method.

    Declaration
    public override ConfigFile ExportToConfigFile()
    Returns
    Type Description
    ConfigFile

    A new Scylla.Core.Util.File.ConfigFile populated with the current configuration values, ready for serialization to JSON via Scylla.Core.Util.File.ConfigFile.ToJSON().

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.ExportToConfigFile()

    GetConfigFileName()

    Returns the display name used as the key for loading and saving the JSON config file associated with this configuration type.

    The returned name should follow the Scylla convention "Scylla [Name] Configuration" (e.g. "Scylla Core Configuration") so that Scylla.Core.Config.ScyllaConfiguration.GetConfigFileBaseName() can derive the compact base name ("Core") used for the actual JSON filename on disk. Override this method in concrete subclasses that support config-file overrides; the default returns null, which disables config-file support for that configuration type.

    Declaration
    public override string GetConfigFileName()
    Returns
    Type Description
    string

    The full configuration name string (e.g. "Scylla Core Configuration"), or null if this configuration type does not participate in the config-file system.

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.GetConfigFileName()

    LoadDefault()

    Loads the default TextMode configuration from the Resources folder.

    Declaration
    public static ScyllaTextModeConfiguration LoadDefault()
    Returns
    Type Description
    ScyllaTextModeConfiguration

    The loaded configuration, or null if not found.

    ResetToDefaults()

    Resets every serialized field in this configuration back to its authored default value, discarding any user edits.

    Called by the base class Scylla.Core.Config.ScyllaConfiguration.Reset() Unity callback (triggered when the asset is created or when the user selects Reset in the Inspector context menu), and also exposed as an explicit editor action via the custom Inspector's "Reset to Defaults" button. Implementations should set every field to the same value it would have immediately after a fresh asset creation.

    Declaration
    public override void ResetToDefaults()
    Overrides
    Scylla.Core.Config.ScyllaConfiguration.ResetToDefaults()

    ResolveActiveWrapMode()

    Resolves the wrap mode from the active TextMode module configuration, falling back to DEFAULT_WRAP_MODE when no module or configuration is available (for example a console used standalone in tests). Reading this live lets configuration changes apply without recreating consumers.

    Declaration
    public static TextWrapMode ResolveActiveWrapMode()
    Returns
    Type Description
    TextWrapMode

    The active wrap mode.

    TryResolveActiveSDF(out float, out float, out float, out float)

    Resolves the SDF rendering settings from the active TextMode module configuration. Returns false (with the default values set) when no module or configuration is available, letting consumers keep their own values in that case. Reading this live lets configuration changes apply without recreating consumers.

    Declaration
    public static bool TryResolveActiveSDF(out float threshold, out float smoothing, out float boldWeight, out float italicShear)
    Parameters
    Type Name Description
    float threshold

    The resolved SDF threshold.

    float smoothing

    The resolved SDF smoothing.

    float boldWeight

    The resolved faux-bold weight in atlas texels.

    float italicShear

    The resolved italic shear factor.

    Returns
    Type Description
    bool

    true if values came from an active configuration; otherwise false.

    TryResolveBlinkRates(out float, out float)

    Resolves the cursor and text blink rates from the active TextMode module configuration. Returns false (with defaults set) when no module or configuration is available.

    Declaration
    public static bool TryResolveBlinkRates(out float cursorBlinkRate, out float textBlinkRate)
    Parameters
    Type Name Description
    float cursorBlinkRate

    The resolved cursor blink rate, or zero to leave the cursor solid.

    float textBlinkRate

    The resolved blink rate for cells carrying the blink attribute.

    Returns
    Type Description
    bool

    true if the values came from an active configuration; otherwise false.

    Remarks

    Both values are rates rather than durations: larger numbers blink faster. A cursor rate of zero means the cursor should not blink at all, which callers apply by turning cursor blinking off rather than by setting a rate of zero.

    TryResolveDefaultLineHeight(out float)

    Resolves the default line height from the active TextMode module configuration. Returns false (with the default value set) when no module or configuration is available, letting consumers keep their own value in that case.

    Declaration
    public static bool TryResolveDefaultLineHeight(out float lineHeight)
    Parameters
    Type Name Description
    float lineHeight

    The resolved default line height multiplier.

    Returns
    Type Description
    bool

    true if the value came from an active configuration; otherwise false.

    Remarks

    This is deliberately separate from TryResolveActiveSDF(out float, out float, out float, out float) even though the setting sits in the same section, because the two are consumed differently. The SDF settings are the source of truth while a configuration is present and overwrite whatever a view holds. The line height is only a starting value: a view that is given one directly keeps it, which is what lets a terminal drive its own line spacing from its own settings without the module configuration overriding it on the next configuration change.

    TryResolveEffectSettings(out bool, out float, out int, out bool)

    Resolves the text effect settings from the active TextMode module configuration. Returns false (with defaults set) when no module or configuration is available, which is what lets effects run in a scene with no framework bootstrap.

    Declaration
    public static bool TryResolveEffectSettings(out bool enabled, out float speedMultiplier, out int maxConcurrent, out bool reduceMotion)
    Parameters
    Type Name Description
    bool enabled

    Whether effects are allowed to run.

    float speedMultiplier

    Speed multiplier applied to every effect.

    int maxConcurrent

    Maximum number of effects one player may run at once.

    bool reduceMotion

    Whether effects should resolve instantly instead of animating.

    Returns
    Type Description
    bool

    true if the values came from an active configuration; otherwise false.

    TryResolveThemeSettings(out string, out bool, out bool)

    Resolves the color theme settings from the active TextMode module configuration. Returns false (with defaults set) when no module or configuration is available, which is what lets a themed view work in a scene with no framework bootstrap.

    Declaration
    public static bool TryResolveThemeSettings(out string themeName, out bool applyToViews, out bool remapOnChange)
    Parameters
    Type Name Description
    string themeName

    Name of the palette to use as the active theme.

    bool applyToViews

    Whether a view should adopt the theme when it initializes.

    bool remapOnChange

    Whether switching theme also recolors existing content.

    Returns
    Type Description
    bool

    true if the values came from an active configuration; otherwise false.

    Validate()

    Validates all serialized fields in this configuration and returns diagnostic results. Called by the framework at startup (to detect invalid configurations early), by the custom Inspector when the user clicks the Validate button, and by Scylla.Core.Config.ScyllaConfiguration.IsValid() when a quick validity check is needed.

    Implementations should check every field that has a defined valid range or dependency and produce a Scylla.Core.Config.ConfigurationValidationResult for each issue found. Use Error(string, string) for values that render the configuration unusable, Warning(string, string) for values that are technically valid but may cause problems, and Info(string, string) for contextual information. Use Scylla.Core.Config.ScyllaConfiguration.BuildValidationResults(params Scylla.Core.Config.ConfigurationValidationResult[]) to conveniently assemble the return array.

    Declaration
    public override ConfigurationValidationResult[] Validate()
    Returns
    Type Description
    ConfigurationValidationResult[]

    An array of Scylla.Core.Config.ConfigurationValidationResult values describing all discovered issues. Return an empty array (or use Empty<T>()) if all fields are valid.

    Overrides
    Scylla.Core.Config.ScyllaConfiguration.Validate()
    In this article
    Back to top Scylla Framework - TextMode Module API Documentation