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 CRTSettings

    Project defaults for the CRT display simulation.

    Inheritance
    object
    CRTSettings
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Scylla.TextMode
    Assembly: ScyllaTextMode.dll
    Syntax
    [Serializable]
    public class CRTSettings
    Remarks

    These are plain values because the CRT types live in their own assembly. A CRT driver that follows the project defaults reads its quality tier and readability clamp from here, and a driver with no preset of its own starts from the preset named here. The HDR mask values and the beam simulator depend on the player's display, so they suit a user config file better than a preset.

    Fields

    BeamAntiRetention

    Whether the sweep drifts slowly against the display when the refresh rate is an even multiple of the CRT rate, which keeps an LCD from retaining a pattern.

    Declaration
    [Tooltip("Lets the beam simulator's sweep drift slowly against the display, which keeps an LCD from retaining a pattern. Can be turned off on OLED displays.")]
    public bool BeamAntiRetention
    Field Value
    Type Description
    bool

    BeamCRTRate

    Refresh rate of the simulated CRT in hertz. The display needs at least twice this rate.

    Declaration
    [Tooltip("Refresh rate of the simulated CRT. The display needs at least twice this rate for the beam simulator to run.")]
    [Range(24, 240)]
    public float BeamCRTRate
    Field Value
    Type Description
    float

    BeamGain

    Share of the picture's brightness the beam simulator gives off on average. 0 picks 0.5 below 200 Hz and 0.7 above.

    Declaration
    [Tooltip("How bright the picture stays with the beam simulator, from 0 to 1. Higher is brighter with more motion blur. 0 picks a value for the display: 0.5 below 200 Hz, 0.7 above.")]
    [Range(0, 1)]
    public float BeamGain
    Field Value
    Type Description
    float

    BeamRefreshRate

    Display refresh rate for the beam simulator in hertz, for displays that report it wrongly. 0 uses the rate the display reports.

    Declaration
    [Tooltip("The display's refresh rate for the beam simulator. 0 uses the rate the display reports; set it by hand for a display that reports it wrongly.")]
    [Range(0, 1000)]
    public float BeamRefreshRate
    Field Value
    Type Description
    float

    BeamScanDirection

    Direction in which the beam sweeps the tube: 0 the whole tube at once, 1 top to bottom, 2 bottom to top.

    Declaration
    [Tooltip("Direction of the beam simulator's sweep. 0 lights the whole tube at once, 1 sweeps from top to bottom like a CRT, 2 from bottom to top.")]
    [Range(0, 2)]
    public int BeamScanDirection
    Field Value
    Type Description
    int

    BeamSimulation

    Whether the beam simulator runs: on displays at twice the CRT rate or more, it lights only the part of the picture the beam is drawing, which brings back a CRT's motion clarity. The picture flickers at the CRT rate, so it is off by default.

    Declaration
    [Tooltip("Lights only the part of the picture the beam is drawing on each display refresh, for the sharp motion of a real CRT. Needs a display at 120 Hz or more, vSync on and variable refresh rate off. The picture flickers at the CRT rate and gets darker. Warning: flickering images can affect people with photosensitive epilepsy. Reduce Motion keeps it off.")]
    public bool BeamSimulation
    Field Value
    Type Description
    bool

    DEFAULT_BEAM_CRT_RATE

    Default refresh rate of the simulated CRT for the beam simulator, in hertz.

    Declaration
    public const float DEFAULT_BEAM_CRT_RATE = 60
    Field Value
    Type Description
    float

    DEFAULT_BEAM_SCAN_DIRECTION

    Default beam scan direction index (top to bottom).

    Declaration
    public const int DEFAULT_BEAM_SCAN_DIRECTION = 1
    Field Value
    Type Description
    int

    DEFAULT_CRT_PRESET

    Name of the preset used when none is configured.

    Declaration
    public const string DEFAULT_CRT_PRESET = "Standard Terminal"
    Field Value
    Type Description
    string

    DEFAULT_HDR_MASK_BRIGHTNESS

    Default HDR mask brightness calibration, which leaves the brightness as computed.

    Declaration
    public const float DEFAULT_HDR_MASK_BRIGHTNESS = 1
    Field Value
    Type Description
    float

    DEFAULT_MAX_DELTA_TIME

    Default clamp for the phosphor time step, in seconds.

    Declaration
    public const float DEFAULT_MAX_DELTA_TIME = 0.1
    Field Value
    Type Description
    float

    DEFAULT_QUALITY_TIER

    Default quality tier index (Medium).

    Declaration
    public const int DEFAULT_QUALITY_TIER = 1
    Field Value
    Type Description
    int

    DefaultPreset

    Name of the preset a CRT driver starts from when it has none assigned.

    Declaration
    [Tooltip("Name of the CRT preset a CRT component starts from when it has none of its own.")]
    public string DefaultPreset
    Field Value
    Type Description
    string

    HDRHeadroom

    Manual HDR headroom, peak luminance over paper white, for displays that report it wrongly. 0 uses what the display reports.

    Declaration
    [Tooltip("How many times brighter than paper white the display can go. 0 uses what the display reports; set it by hand for a display that reports it wrongly.")]
    [Range(0, 16)]
    public float HDRHeadroom
    Field Value
    Type Description
    float

    HDRMask

    Whether CRT presets that ask for HDR mask mode may use it. Turning it off keeps the normal mask on every display.

    Declaration
    [Tooltip("When enabled, CRT presets that ask for it show the phosphor mask at full strength on an HDR display, with the brightness recovered from the display's headroom. Turn it off to keep the normal mask everywhere.")]
    public bool HDRMask
    Field Value
    Type Description
    bool

    HDRMaskBrightness

    Brightness calibration for HDR mask mode: 1 leaves the brightness as computed.

    Declaration
    [Tooltip("Brightness of the picture in HDR mask mode. 1 keeps it as computed from the display; lower it if the picture looks too bright on this display, raise it if it looks too dim.")]
    [Range(0.25, 2)]
    public float HDRMaskBrightness
    Field Value
    Type Description
    float

    MAX_BEAM_CRT_RATE

    Highest refresh rate of the simulated CRT, in hertz.

    Declaration
    public const float MAX_BEAM_CRT_RATE = 240
    Field Value
    Type Description
    float

    MAX_BEAM_REFRESH_RATE

    Highest manual display refresh rate for the beam simulator, in hertz.

    Declaration
    public const float MAX_BEAM_REFRESH_RATE = 1000
    Field Value
    Type Description
    float

    MAX_BEAM_SCAN_DIRECTION

    Highest beam scan direction index (bottom to top).

    Declaration
    public const int MAX_BEAM_SCAN_DIRECTION = 2
    Field Value
    Type Description
    int

    MAX_HDR_HEADROOM

    Largest manual HDR headroom, peak luminance over paper white.

    Declaration
    public const float MAX_HDR_HEADROOM = 16
    Field Value
    Type Description
    float

    MAX_HDR_MASK_BRIGHTNESS

    Largest HDR mask brightness calibration.

    Declaration
    public const float MAX_HDR_MASK_BRIGHTNESS = 2
    Field Value
    Type Description
    float

    MAX_MAX_DELTA_TIME

    Largest value of the phosphor time step clamp, in seconds.

    Declaration
    public const float MAX_MAX_DELTA_TIME = 1
    Field Value
    Type Description
    float

    MAX_QUALITY_TIER

    Highest quality tier index (High).

    Declaration
    public const int MAX_QUALITY_TIER = 2
    Field Value
    Type Description
    int

    MIN_BEAM_CRT_RATE

    Lowest refresh rate of the simulated CRT, in hertz.

    Declaration
    public const float MIN_BEAM_CRT_RATE = 24
    Field Value
    Type Description
    float

    MIN_HDR_MASK_BRIGHTNESS

    Smallest HDR mask brightness calibration.

    Declaration
    public const float MIN_HDR_MASK_BRIGHTNESS = 0.25
    Field Value
    Type Description
    float

    MIN_MAX_DELTA_TIME

    Smallest value of the phosphor time step clamp, in seconds.

    Declaration
    public const float MIN_MAX_DELTA_TIME = 0.02
    Field Value
    Type Description
    float

    MaxDeltaTime

    Longest time step the phosphor simulation takes in one frame, in seconds.

    Declaration
    [Tooltip("Longest time step the phosphor afterglow advances by in one frame, in seconds. Keeps a loading hitch from wiping the afterglow in one step.")]
    [Range(0.02, 1)]
    public float MaxDeltaTime
    Field Value
    Type Description
    float

    QualityTier

    Default quality tier: 0 Low, 1 Medium, 2 High.

    Declaration
    [Tooltip("Default quality of the CRT. 0 is Low (one pass, for mobile and handheld devices), 1 is Medium (adds phosphor persistence and glow), 2 is High (adds halation and a per-channel beam).")]
    [Range(0, 2)]
    public int QualityTier
    Field Value
    Type Description
    int

    ReadabilityClamp

    Whether CRT drivers limit the settings that cost legibility by default.

    Declaration
    [Tooltip("When enabled, CRT components limit softness, curvature, glow and afterglow so text stays easy to read.")]
    public bool ReadabilityClamp
    Field Value
    Type Description
    bool
    In this article
    Back to top Scylla Framework - TextMode Module API Documentation