Class TextModeCRTConstants
Shader names, shader property IDs, keywords and parameter limits used by the TextMode CRT.
Inherited Members
Namespace: Scylla.TextMode.CRT
Assembly: ScyllaTextMode.CRT.dll
Syntax
public static class TextModeCRTConstants
Fields
BURN_IN_TEXTURE_HEIGHT
Height of the burn-in texture, in texels.
Declaration
public const int BURN_IN_TEXTURE_HEIGHT = 384
Field Value
| Type | Description |
|---|---|
| int |
BURN_IN_TEXTURE_WIDTH
Width of the burn-in texture, in texels. It covers the tube at a fixed size, so it survives resizes.
Declaration
public const int BURN_IN_TEXTURE_WIDTH = 512
Field Value
| Type | Description |
|---|---|
| int |
BURN_IN_UPDATE_SECONDS
How often the burn-in exposure is updated, in seconds.
Declaration
public const float BURN_IN_UPDATE_SECONDS = 0.5
Field Value
| Type | Description |
|---|---|
| float |
BeamID
Beam: (width for black, width for white, horizontal softness, horizontal kernel).
Declaration
public static readonly int BeamID
Field Value
| Type | Description |
|---|---|
| int |
BeamSimID
Beam simulator: (display refreshes per CRT frame, 0 when off; start of this refresh within the CRT frame, in refreshes; gain; scan direction).
Declaration
public static readonly int BeamSimID
Field Value
| Type | Description |
|---|---|
| int |
BezelColorID
Bezel color in linear light.
Declaration
public static readonly int BezelColorID
Field Value
| Type | Description |
|---|---|
| int |
BezelID
Bezel: (reflection strength, width in output pixels, 0, 0).
Declaration
public static readonly int BezelID
Field Value
| Type | Description |
|---|---|
| int |
BurnGainID
Burn-in pass: how much of the picture is added to the exposure this update.
Declaration
public static readonly int BurnGainID
Field Value
| Type | Description |
|---|---|
| int |
BurnID
Burn-in: (strength, 0, 0, 0).
Declaration
public static readonly int BurnID
Field Value
| Type | Description |
|---|---|
| int |
BurnTexID
The light the phosphor has been exposed to, accumulated over the session.
Declaration
public static readonly int BurnTexID
Field Value
| Type | Description |
|---|---|
| int |
CALIBRATION_SHADER_NAME
Shader of the calibration pass, which draws a CRTCalibrationPattern in place of the captured picture.
Declaration
public const string CALIBRATION_SHADER_NAME = "Scylla/TextMode/CRT/Calibration"
Field Value
| Type | Description |
|---|---|
| string |
COMB_LINE_SHIFT_TOLERANCE
How far from half a cycle the line shift may be for the comb filter to be used, in cycles.
Declaration
public const float COMB_LINE_SHIFT_TOLERANCE = 0.05
Field Value
| Type | Description |
|---|---|
| float |
COMPOSITE_SHADER_NAME
Shader of the output graphic, which reconstructs the tube image at screen resolution.
Declaration
public const string COMPOSITE_SHADER_NAME = "Scylla/TextMode/CRT/Composite"
Field Value
| Type | Description |
|---|---|
| string |
CaptureSizeID
Raster pass: size of the captured grid: (width, height, 1 / width, 1 / height).
Declaration
public static readonly int CaptureSizeID
Field Value
| Type | Description |
|---|---|
| int |
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. Mirrors DEFAULT_MAX_DELTA_TIME.
Declaration
public const float DEFAULT_MAX_DELTA_TIME = 0.1
Field Value
| Type | Description |
|---|---|
| float |
DEGAUSS_DECAY_SECONDS
Time constant of the dying degauss wobble, in seconds.
Declaration
public const float DEGAUSS_DECAY_SECONDS = 0.5
Field Value
| Type | Description |
|---|---|
| float |
DEGAUSS_SECONDS
Length of a degauss, in seconds.
Declaration
public const float DEGAUSS_SECONDS = 2
Field Value
| Type | Description |
|---|---|
| float |
DecayFastID
Phosphor pass: fast decay factor per channel for this frame; w is the slow weight.
Declaration
public static readonly int DecayFastID
Field Value
| Type | Description |
|---|---|
| int |
DecaySlowID
Phosphor pass: slow decay factor per channel for this frame.
Declaration
public static readonly int DecaySlowID
Field Value
| Type | Description |
|---|---|
| int |
DegaussID
Degauss: (strength, seconds since it started, 0, 0).
Declaration
public static readonly int DegaussID
Field Value
| Type | Description |
|---|---|
| int |
FrameID
Image composite: how far the bezel reaches past the tube, as a fraction of the tube: (x, y, 0, 0).
Declaration
public static readonly int FrameID
Field Value
| Type | Description |
|---|---|
| int |
GLOW_SHADER_NAME
Shader of the glow pyramid passes.
Declaration
public const string GLOW_SHADER_NAME = "Scylla/TextMode/CRT/Glow"
Field Value
| Type | Description |
|---|---|
| string |
GeometryID
Geometry: (curvature x, curvature y, overscan, corner radius).
Declaration
public static readonly int GeometryID
Field Value
| Type | Description |
|---|---|
| int |
GlowBaseTexID
Glow upsample pass: this level's own downsample, which the upsampled level is added to.
Declaration
public static readonly int GlowBaseTexID
Field Value
| Type | Description |
|---|---|
| int |
GlowBlendID
Glow upsample pass: weight of the upsampled level.
Declaration
public static readonly int GlowBlendID
Field Value
| Type | Description |
|---|---|
| int |
GlowID
Glow: (beam bloom strength, halation strength, 0, 0).
Declaration
public static readonly int GlowID
Field Value
| Type | Description |
|---|---|
| int |
GlowInputTexID
Glow pass: the texture being read.
Declaration
public static readonly int GlowInputTexID
Field Value
| Type | Description |
|---|---|
| int |
GlowTexID
Blurred source for beam bloom.
Declaration
public static readonly int GlowTexID
Field Value
| Type | Description |
|---|---|
| int |
GlowTexelID
Glow pass: texel size of the texture being written: (1 / width, 1 / height, width, height).
Declaration
public static readonly int GlowTexelID
Field Value
| Type | Description |
|---|---|
| int |
HalationTexID
Widely blurred source for halation.
Declaration
public static readonly int HalationTexID
Field Value
| Type | Description |
|---|---|
| int |
HistoryFastTexID
Phosphor pass: fast term history.
Declaration
public static readonly int HistoryFastTexID
Field Value
| Type | Description |
|---|---|
| int |
HistorySlowTexID
Phosphor pass: slow term history.
Declaration
public static readonly int HistorySlowTexID
Field Value
| Type | Description |
|---|---|
| int |
IMAGE_COMPOSITE_SHADER_NAME
Shader of the image effect output, which draws the same composite over a whole target.
Declaration
public const string IMAGE_COMPOSITE_SHADER_NAME = "Scylla/TextMode/CRT/ImageComposite"
Field Value
| Type | Description |
|---|---|
| string |
ImageScaleID
Display pixels per target pixel of the image composite (x); 1 unless the target is rescaled afterwards.
Declaration
public static readonly int ImageScaleID
Field Value
| Type | Description |
|---|---|
| int |
KEYWORD_MASK_APERTURE
Composite keyword for the aperture grille mask.
Declaration
public const string KEYWORD_MASK_APERTURE = "_CRT_MASK_APERTURE"
Field Value
| Type | Description |
|---|---|
| string |
KEYWORD_MASK_NONE
Composite keyword for no mask.
Declaration
public const string KEYWORD_MASK_NONE = "_CRT_MASK_NONE"
Field Value
| Type | Description |
|---|---|
| string |
KEYWORD_MASK_SHADOW
Composite keyword for the shadow mask.
Declaration
public const string KEYWORD_MASK_SHADOW = "_CRT_MASK_SHADOW"
Field Value
| Type | Description |
|---|---|
| string |
KEYWORD_MASK_SLOT
Composite keyword for the slot mask.
Declaration
public const string KEYWORD_MASK_SLOT = "_CRT_MASK_SLOT"
Field Value
| Type | Description |
|---|---|
| string |
KEYWORD_TIER_HIGH
Composite keyword for the High tier.
Declaration
public const string KEYWORD_TIER_HIGH = "_CRT_TIER_HIGH"
Field Value
| Type | Description |
|---|---|
| string |
KEYWORD_TIER_LOW
Composite keyword for the Low tier.
Declaration
public const string KEYWORD_TIER_LOW = "_CRT_TIER_LOW"
Field Value
| Type | Description |
|---|---|
| string |
KEYWORD_TIER_MEDIUM
Composite keyword for the Medium tier.
Declaration
public const string KEYWORD_TIER_MEDIUM = "_CRT_TIER_MEDIUM"
Field Value
| Type | Description |
|---|---|
| string |
MASK_TEXELS_PER_TRIAD
Texels across one triad of a mask texture.
Declaration
public const int MASK_TEXELS_PER_TRIAD = 64
Field Value
| Type | Description |
|---|---|
| int |
MAX_BEAM_WIDTH
Largest beam width, in source lines.
Declaration
public const float MAX_BEAM_WIDTH = 1
Field Value
| Type | Description |
|---|---|
| float |
MAX_BEZEL_WIDTH
Widest bezel, as a fraction of the picture height.
Declaration
public const float MAX_BEZEL_WIDTH = 0.25
Field Value
| Type | Description |
|---|---|
| float |
MAX_BURN_IN_SECONDS
Longest burn-in time, in seconds.
Declaration
public const float MAX_BURN_IN_SECONDS = 36000
Field Value
| Type | Description |
|---|---|
| float |
MAX_CELL_PIXELS
Largest source cell size per axis, in pixels.
Declaration
public const int MAX_CELL_PIXELS = 128
Field Value
| Type | Description |
|---|---|
| int |
MAX_CHROMA_BANDWIDTH
Largest chroma bandwidth, in MHz.
Declaration
public const float MAX_CHROMA_BANDWIDTH = 4
Field Value
| Type | Description |
|---|---|
| float |
MAX_COLOR_TEMPERATURE
Largest color temperature, in kelvin.
Declaration
public const float MAX_COLOR_TEMPERATURE = 12000
Field Value
| Type | Description |
|---|---|
| float |
MAX_CONVERGENCE_PIXELS
Largest convergence error at the edge of the picture, in screen pixels.
Declaration
public const float MAX_CONVERGENCE_PIXELS = 4
Field Value
| Type | Description |
|---|---|
| float |
MAX_CURVATURE
Largest curvature per axis.
Declaration
public const float MAX_CURVATURE = 0.25
Field Value
| Type | Description |
|---|---|
| float |
MAX_DECAY_FAST_MS
Largest fast phosphor time constant, in milliseconds.
Declaration
public const float MAX_DECAY_FAST_MS = 200
Field Value
| Type | Description |
|---|---|
| float |
MAX_DECAY_SLOW_MS
Largest slow phosphor time constant, in milliseconds.
Declaration
public const float MAX_DECAY_SLOW_MS = 3000
Field Value
| Type | Description |
|---|---|
| float |
MAX_GLOW_LEVELS
Largest number of glow pyramid levels.
Declaration
public const int MAX_GLOW_LEVELS = 6
Field Value
| Type | Description |
|---|---|
| int |
MAX_HDR_HEADROOM
Largest headroom HDR mask mode works with, and the largest manual headroom override.
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_HORIZONTAL_SOFTNESS
Largest horizontal softness, in source pixels.
Declaration
public const float MAX_HORIZONTAL_SOFTNESS = 3
Field Value
| Type | Description |
|---|---|
| float |
MAX_HUM_BAR
Largest hum bar strength.
Declaration
public const float MAX_HUM_BAR = 0.5
Field Value
| Type | Description |
|---|---|
| float |
MAX_HUM_BAR_SPEED
Fastest hum bar movement, in picture heights per second.
Declaration
public const float MAX_HUM_BAR_SPEED = 2
Field Value
| Type | Description |
|---|---|
| float |
MAX_JITTER_PIXELS
Largest horizontal sync jitter, in screen pixels.
Declaration
public const float MAX_JITTER_PIXELS = 8
Field Value
| Type | Description |
|---|---|
| float |
MAX_LUMA_BANDWIDTH
Largest luma bandwidth, in MHz.
Declaration
public const float MAX_LUMA_BANDWIDTH = 8
Field Value
| Type | Description |
|---|---|
| float |
MAX_MASK_PERIOD
Largest mask period, in output pixels, that the procedural mask draws. Larger periods use the texture mask.
Declaration
public const int MAX_MASK_PERIOD = 6
Field Value
| Type | Description |
|---|---|
| int |
MAX_MASK_PERIOD_OVERRIDE
Largest fixed mask period, in output pixels. Periods above MAX_MASK_PERIOD use the texture mask.
Declaration
public const int MAX_MASK_PERIOD_OVERRIDE = 24
Field Value
| Type | Description |
|---|---|
| int |
MAX_MASK_TVL
Largest mask density, in triads per screen height.
Declaration
public const int MAX_MASK_TVL = 1200
Field Value
| Type | Description |
|---|---|
| int |
MAX_MONITOR_RESOLUTION
Largest picture height of an in-world monitor, in texels.
Declaration
public const int MAX_MONITOR_RESOLUTION = 4096
Field Value
| Type | Description |
|---|---|
| int |
MAX_OVERSCAN
Largest overscan.
Declaration
public const float MAX_OVERSCAN = 1.2
Field Value
| Type | Description |
|---|---|
| float |
MAX_ROWS_PER_SCANLINE
Most capture rows the raster pass reads for one scanline. A scanline that covers more rows is split into this many even bands, each read at its middle row.
Declaration
public const int MAX_ROWS_PER_SCANLINE = 32
Field Value
| Type | Description |
|---|---|
| int |
Remarks
ScyllaCRTRaster.hlsl hard-codes the same 32 in its band step and its loop, and both must match. The raster shader's CRT_RASTER_MAX_BANDS define must equal this value.
MAX_SCALED_SUBCARRIER_PERIOD
Longest subcarrier cycle, in pixels, after the camera capture scale is applied. The
signal decoder's box filter reads up to 2 * CRT_SIGNAL_MAX_BOX + 1 taps, so this
is twice CRT_SIGNAL_MAX_BOX (16) in ScyllaCRTSignal.hlsl, and both must match.
Declaration
public const float MAX_SCALED_SUBCARRIER_PERIOD = 32
Field Value
| Type | Description |
|---|---|
| float |
MAX_SCANLINES_PER_ROW
Largest fixed number of scanlines per character row.
Declaration
public const int MAX_SCANLINES_PER_ROW = 32
Field Value
| Type | Description |
|---|---|
| int |
MAX_SCANLINE_PITCH
Largest scanline pitch, in screen pixels.
Declaration
public const int MAX_SCANLINE_PITCH = 8
Field Value
| Type | Description |
|---|---|
| int |
MAX_SIGNAL_TAP_RADIUS
Largest filter reach of the signal pass on each side of a pixel, in raster pixels.
Declaration
public const int MAX_SIGNAL_TAP_RADIUS = 32
Field Value
| Type | Description |
|---|---|
| int |
MAX_SLOT_HEIGHT
Largest slot height, in output pixels.
Declaration
public const int MAX_SLOT_HEIGHT = 8
Field Value
| Type | Description |
|---|---|
| int |
MAX_SUBCARRIER_PERIOD
Longest subcarrier cycle, in source pixels.
Declaration
public const float MAX_SUBCARRIER_PERIOD = 16
Field Value
| Type | Description |
|---|---|
| float |
MAX_VERTICAL_ROLL
Fastest vertical roll, in picture heights per second.
Declaration
public const float MAX_VERTICAL_ROLL = 2
Field Value
| Type | Description |
|---|---|
| float |
MAX_WARM_UP_SECONDS
Longest warm-up after power on, in seconds.
Declaration
public const float MAX_WARM_UP_SECONDS = 10
Field Value
| Type | Description |
|---|---|
| float |
MIN_AUTO_SCANLINES_PER_ROW
Fewest scanlines per character row before the pitch is lowered to keep text readable.
Declaration
public const int MIN_AUTO_SCANLINES_PER_ROW = 9
Field Value
| Type | Description |
|---|---|
| int |
MIN_BEAM_WIDTH
Smallest beam width, in source lines.
Declaration
public const float MIN_BEAM_WIDTH = 0.1
Field Value
| Type | Description |
|---|---|
| float |
MIN_BURN_IN_SECONDS
Shortest burn-in time, in seconds.
Declaration
public const float MIN_BURN_IN_SECONDS = 1
Field Value
| Type | Description |
|---|---|
| float |
MIN_CELL_PIXELS
Smallest source cell size per axis, in pixels.
Declaration
public const int MIN_CELL_PIXELS = 4
Field Value
| Type | Description |
|---|---|
| int |
MIN_CHROMA_BANDWIDTH
Smallest chroma bandwidth, in MHz.
Declaration
public const float MIN_CHROMA_BANDWIDTH = 0.1
Field Value
| Type | Description |
|---|---|
| float |
MIN_COLOR_TEMPERATURE
Smallest color temperature, in kelvin.
Declaration
public const float MIN_COLOR_TEMPERATURE = 3000
Field Value
| Type | Description |
|---|---|
| float |
MIN_CURVED_SCANLINES_PER_ROW
Fewest scanlines per character row on a curved tube before the pitch is lowered. Lower than MIN_AUTO_SCANLINES_PER_ROW, because the warp makes the pitch fractional across the screen, and a dense fractional pitch beats against the pixel rows as moire rings. Taller scanlines make the rings finer and fainter.
Declaration
public const int MIN_CURVED_SCANLINES_PER_ROW = 5
Field Value
| Type | Description |
|---|---|
| int |
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_HDR_MASK_HEADROOM
Smallest headroom, peak luminance over paper white, at which HDR mask mode takes over. Below it a full-strength mask would end up dimmer than the partial SDR mask it replaces.
Declaration
public const float MIN_HDR_MASK_HEADROOM = 2
Field Value
| Type | Description |
|---|---|
| float |
MIN_HORIZONTAL_SOFTNESS
Smallest horizontal softness, in source pixels.
Declaration
public const float MIN_HORIZONTAL_SOFTNESS = 0.1
Field Value
| Type | Description |
|---|---|
| float |
MIN_LUMA_BANDWIDTH
Smallest luma bandwidth, in MHz.
Declaration
public const float MIN_LUMA_BANDWIDTH = 0.5
Field Value
| Type | Description |
|---|---|
| float |
MIN_MASK_TVL
Smallest mask density, in triads per screen height.
Declaration
public const int MIN_MASK_TVL = 100
Field Value
| Type | Description |
|---|---|
| int |
MIN_MONITOR_RESOLUTION
Smallest picture height of an in-world monitor, in texels.
Declaration
public const int MIN_MONITOR_RESOLUTION = 64
Field Value
| Type | Description |
|---|---|
| int |
MIN_OVERSCAN
Smallest overscan.
Declaration
public const float MIN_OVERSCAN = 0.9
Field Value
| Type | Description |
|---|---|
| float |
MIN_SCANLINE_PITCH
Smallest scanline pitch, in screen pixels.
Declaration
public const int MIN_SCANLINE_PITCH = 2
Field Value
| Type | Description |
|---|---|
| int |
MIN_SUBCARRIER_PERIOD
Shortest subcarrier cycle, in source pixels.
Declaration
public const float MIN_SUBCARRIER_PERIOD = 2
Field Value
| Type | Description |
|---|---|
| float |
Remarks
At exactly 2 pixels the carrier is at the Nyquist limit, so the sine and cosine carriers become the same alternating pattern and the I and Q axes cannot be separated. Colors are approximate at this period.
MONITOR_SHADER_NAME
Shader of the screen of an in-world monitor, which shows the picture a TextModeCRTMonitor renders with the mask laid out on the glass.
Declaration
public const string MONITOR_SHADER_NAME = "Scylla/TextMode/CRT/Monitor"
Field Value
| Type | Description |
|---|---|
| string |
MaskGainID
Mask brightness compensation: (per channel scale for one lit subpixel, slot compensation, HDR mask scale, 0). The HDR mask scale is 1 outside HDR mask mode.
Declaration
public static readonly int MaskGainID
Field Value
| Type | Description |
|---|---|
| int |
MaskID
Mask: (strength, period in pixels, slot height, slot gap).
Declaration
public static readonly int MaskID
Field Value
| Type | Description |
|---|---|
| int |
MaskSpaceID
Composite mask space: (1 when the mask is laid out on the tube and faded with distance, for a world-space canvas; 0 for screen pixels, 0, 0, 0).
Declaration
public static readonly int MaskSpaceID
Field Value
| Type | Description |
|---|---|
| int |
MaskTex2ID
Texture mask: the slot mask tile without bridges, blended in by the slot gap.
Declaration
public static readonly int MaskTex2ID
Field Value
| Type | Description |
|---|---|
| int |
MaskTexGainID
Texture mask: (gain per channel that brings the tile's average to 1, blend from the second tile to the first).
Declaration
public static readonly int MaskTexGainID
Field Value
| Type | Description |
|---|---|
| int |
MaskTexID
Texture mask: the tile.
Declaration
public static readonly int MaskTexID
Field Value
| Type | Description |
|---|---|
| int |
MaskTextureID
Texture mask: (1 when on, 1 / period, 1 / (period * tile height), texels per mask pixel along the denser axis).
Declaration
public static readonly int MaskTextureID
Field Value
| Type | Description |
|---|---|
| int |
MonitorMaskGainID
Monitor screen mask brightness compensation: (gain of one lit subpixel, slot compensation, HDR mask scale, 0). The HDR mask scale is 1 outside HDR mask mode.
Declaration
public static readonly int MonitorMaskGainID
Field Value
| Type | Description |
|---|---|
| int |
MonitorMaskID
Monitor screen mask: (strength, period in mask cells, slot height, slot gap).
Declaration
public static readonly int MonitorMaskID
Field Value
| Type | Description |
|---|---|
| int |
MonitorMaskTypeID
Monitor screen mask type, in CRTMaskType order.
Declaration
public static readonly int MonitorMaskTypeID
Field Value
| Type | Description |
|---|---|
| int |
MonitorSizeID
Monitor screen: size of the mask grid on the glass in mask cells: (width, height, 1 / width, 1 / height).
Declaration
public static readonly int MonitorSizeID
Field Value
| Type | Description |
|---|---|
| int |
NEUTRAL_COLOR_TEMPERATURE
Color temperature that maps to neutral white.
Declaration
public const float NEUTRAL_COLOR_TEMPERATURE = 6500
Field Value
| Type | Description |
|---|---|
| float |
NTSC_FIELD_RATE
NTSC fields per second.
Declaration
public const float NTSC_FIELD_RATE = 59.94
Field Value
| Type | Description |
|---|---|
| float |
NTSC_SUBCARRIER_MHZ
NTSC color subcarrier frequency, in MHz.
Declaration
public const float NTSC_SUBCARRIER_MHZ = 3.579545
Field Value
| Type | Description |
|---|---|
| float |
NTSC_VISIBLE_CYCLES
Subcarrier cycles across the visible part of an NTSC line, which lasts about 52.7 microseconds.
Declaration
public const float NTSC_VISIBLE_CYCLES = 188.5
Field Value
| Type | Description |
|---|---|
| float |
OutputSizeID
Size of the tube area in output pixels: (width, height, 1 / width, 1 / height).
Declaration
public static readonly int OutputSizeID
Field Value
| Type | Description |
|---|---|
| int |
PAL_FIELD_RATE
PAL fields per second.
Declaration
public const float PAL_FIELD_RATE = 50
Field Value
| Type | Description |
|---|---|
| float |
PAL_SUBCARRIER_MHZ
PAL color subcarrier frequency, in MHz.
Declaration
public const float PAL_SUBCARRIER_MHZ = 4.4336185
Field Value
| Type | Description |
|---|---|
| float |
PAL_VISIBLE_CYCLES
Subcarrier cycles across the visible part of a PAL line, which lasts about 52 microseconds.
Declaration
public const float PAL_VISIBLE_CYCLES = 230.5
Field Value
| Type | Description |
|---|---|
| float |
PHOSPHOR_SHADER_NAME
Shader of the phosphor persistence pass.
Declaration
public const string PHOSPHOR_SHADER_NAME = "Scylla/TextMode/CRT/Phosphor"
Field Value
| Type | Description |
|---|---|
| string |
POWER_DARK_GAIN
Brightness gain below which a powered off tube counts as dark.
Declaration
public const float POWER_DARK_GAIN = 0.004
Field Value
| Type | Description |
|---|---|
| float |
POWER_OFF_BEAM_MIX_EXTENT
Power off: vertical extent below which the collapsing picture crossfades into the plain line, and the width of that crossfade.
Declaration
public const float POWER_OFF_BEAM_MIX_EXTENT = 0.4
Field Value
| Type | Description |
|---|---|
| float |
POWER_OFF_DOT_SECONDS
Power off: time constant of the fading dot, in seconds.
Declaration
public const float POWER_OFF_DOT_SECONDS = 0.35
Field Value
| Type | Description |
|---|---|
| float |
POWER_OFF_FADE_SECONDS
Power off with Reduce Motion: length of the plain fade to black, in seconds.
Declaration
public const float POWER_OFF_FADE_SECONDS = 0.3
Field Value
| Type | Description |
|---|---|
| float |
POWER_OFF_HORIZONTAL_SECONDS
Power off: how long the line then takes to shrink into a dot, in seconds.
Declaration
public const float POWER_OFF_HORIZONTAL_SECONDS = 0.18
Field Value
| Type | Description |
|---|---|
| float |
POWER_OFF_PEAK_GAIN
Power off: brightness of the line and the dot, relative to the picture.
Declaration
public const float POWER_OFF_PEAK_GAIN = 3
Field Value
| Type | Description |
|---|---|
| float |
POWER_OFF_VERTICAL_SECONDS
Power off: how long the picture takes to collapse into a horizontal line, in seconds.
Declaration
public const float POWER_OFF_VERTICAL_SECONDS = 0.08
Field Value
| Type | Description |
|---|---|
| float |
PatternBandsID
Calibration pass: (grille width, first row below the steps, first row below the gradient, grid cell), rows counted from the top.
Declaration
public static readonly int PatternBandsID
Field Value
| Type | Description |
|---|---|
| int |
PatternGridID
Calibration pass: (grid line column, grid line row, dot column, dot row), each modulo the grid cell.
Declaration
public static readonly int PatternGridID
Field Value
| Type | Description |
|---|---|
| int |
PatternID
Calibration pass: (pattern, width, height, 1 for linear color space).
Declaration
public static readonly int PatternID
Field Value
| Type | Description |
|---|---|
| int |
PhosphorColorID
Monochrome phosphor color in linear light; w is 1 when monochrome is on.
Declaration
public static readonly int PhosphorColorID
Field Value
| Type | Description |
|---|---|
| int |
PowerID
Power state of the tube: (horizontal extent, vertical extent, brightness gain, mix toward a plain white beam).
Declaration
public static readonly int PowerID
Field Value
| Type | Description |
|---|---|
| int |
RASTER_SHADER_NAME
Shader of the raster pass, which averages the captured grid down to one row per scanline.
Declaration
public const string RASTER_SHADER_NAME = "Scylla/TextMode/CRT/Raster"
Field Value
| Type | Description |
|---|---|
| string |
READABLE_MAX_BEAM_BLEND
Readability clamp: largest beam blend.
Declaration
public const float READABLE_MAX_BEAM_BLEND = 0.2
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_BURN_IN
Readability clamp: largest burn-in strength.
Declaration
public const float READABLE_MAX_BURN_IN = 0.1
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_CONVERGENCE_PIXELS
Readability clamp: largest convergence error, in screen pixels.
Declaration
public const float READABLE_MAX_CONVERGENCE_PIXELS = 0.5
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_CURVATURE
Readability clamp: largest curvature per axis.
Declaration
public const float READABLE_MAX_CURVATURE = 0.02
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_DECAY_SLOW_MS
Readability clamp: largest slow phosphor time constant, in milliseconds.
Declaration
public const float READABLE_MAX_DECAY_SLOW_MS = 150
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_GLOW
Readability clamp: largest beam bloom.
Declaration
public const float READABLE_MAX_GLOW = 0.1
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_HALATION
Readability clamp: largest halation.
Declaration
public const float READABLE_MAX_HALATION = 0.03
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_HORIZONTAL_SOFTNESS
Readability clamp: largest horizontal softness.
Declaration
public const float READABLE_MAX_HORIZONTAL_SOFTNESS = 0.45
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_HUM_BAR
Readability clamp: largest hum bar strength.
Declaration
public const float READABLE_MAX_HUM_BAR = 0.03
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_JITTER_PIXELS
Readability clamp: largest horizontal sync jitter, in screen pixels.
Declaration
public const float READABLE_MAX_JITTER_PIXELS = 0.25
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_MASK_STRENGTH
Readability clamp: largest mask strength.
Declaration
public const float READABLE_MAX_MASK_STRENGTH = 0.3
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MAX_NOISE
Readability clamp: largest signal noise.
Declaration
public const float READABLE_MAX_NOISE = 0.03
Field Value
| Type | Description |
|---|---|
| float |
READABLE_MIN_BEAM_WIDTH
Readability clamp: smallest beam width for black.
Declaration
public const float READABLE_MIN_BEAM_WIDTH = 0.26
Field Value
| Type | Description |
|---|---|
| float |
RasterConvergenceID
Raster pass convergence at the picture's edge: (red and blue offset in capture pixels across, in capture rows down, 0, 0).
Declaration
public static readonly int RasterConvergenceID
Field Value
| Type | Description |
|---|---|
| int |
RasterID
Raster pass: number of scanlines, and capture rows per scanline: (lines, rowsPerLine, 0, 0).
Declaration
public static readonly int RasterID
Field Value
| Type | Description |
|---|---|
| int |
SCANLINE_ALIGN_MIN_PITCH
The scanline height, in pixels, from which a fixed count per row may keep a fractional pitch to stay aligned with the text. Below it a fractional pitch beats as plain uneven bands, so the pitch is rounded to whole pixels.
Declaration
public const float SCANLINE_ALIGN_MIN_PITCH = 4
Field Value
| Type | Description |
|---|---|
| float |
SCANLINE_SNAP_TOLERANCE
How far, in pixels, a scanline height from a fixed count per row may be from a whole number of pixels and still be rounded to it. A pitch just off a whole number, such as 2.03, beats as uneven bands; the whole number keeps every scanline the same height.
Declaration
public const float SCANLINE_SNAP_TOLERANCE = 0.1
Field Value
| Type | Description |
|---|---|
| float |
SIGNAL_PROFILER_SAMPLE
Name of the profiler sample around the video signal passes, as it appears in the Profiler and the Frame Debugger.
Declaration
public const string SIGNAL_PROFILER_SAMPLE = "TextMode CRT Signal"
Field Value
| Type | Description |
|---|---|
| string |
SIGNAL_SHADER_NAME
Shader of the video signal pass, which encodes each scanline as an S-Video or composite signal and decodes it again.
Declaration
public const string SIGNAL_SHADER_NAME = "Scylla/TextMode/CRT/Signal"
Field Value
| Type | Description |
|---|---|
| string |
ShapeID
Shape: (vignette, beam blend, scanline phase in lines, 0).
Declaration
public static readonly int ShapeID
Field Value
| Type | Description |
|---|---|
| int |
SignalCarrierID
Signal pass subcarrier: (cycles per raster pixel, phase shift per scanline in cycles, field phase in cycles, 1 for PAL).
Declaration
public static readonly int SignalCarrierID
Field Value
| Type | Description |
|---|---|
| int |
SignalFilterID
Signal pass filters, in raster pixels: (luma sigma, wide luma sigma for sharpening, chroma sigma, sharpness).
Declaration
public static readonly int SignalFilterID
Field Value
| Type | Description |
|---|---|
| int |
SignalID
Signal: (gamma ratio, brightness, contrast, saturation).
Declaration
public static readonly int SignalID
Field Value
| Type | Description |
|---|---|
| int |
SignalModeID
Signal pass mode: (1 for composite, 0 for S-Video; 1 when the raster holds linear light; tap radius in pixels; 0).
Declaration
public static readonly int SignalModeID
Field Value
| Type | Description |
|---|---|
| int |
SignalMotionID
Signal pass motion: (seed of the current field, vertical roll in scanlines, 0, 0).
Declaration
public static readonly int SignalMotionID
Field Value
| Type | Description |
|---|---|
| int |
SignalNoiseID
Signal pass disturbances: (noise, jitter in raster pixels, hum bar strength, hum bar phase in picture heights).
Declaration
public static readonly int SignalNoiseID
Field Value
| Type | Description |
|---|---|
| int |
SignalOptionsID
Signal pass options: (1 when the NTSC comb filter is on, 0, 0, 0).
Declaration
public static readonly int SignalOptionsID
Field Value
| Type | Description |
|---|---|
| int |
SourceSizeID
Size of the source in texels: (width, height, 1 / width, 1 / height).
Declaration
public static readonly int SourceSizeID
Field Value
| Type | Description |
|---|---|
| int |
SourceTexID
The image the composite reconstructs the tube from (the raster, or the phosphor output).
Declaration
public static readonly int SourceTexID
Field Value
| Type | Description |
|---|---|
| int |
TEXTURE_MASK_MIN_PERIOD
Smallest mask period, in output pixels, at which the texture mask replaces the procedural one. See TextureMask.
Declaration
public const float TEXTURE_MASK_MIN_PERIOD = 6
Field Value
| Type | Description |
|---|---|
| float |
WhiteGainID
White point gain per channel, from the color temperature.
Declaration
public static readonly int WhiteGainID
Field Value
| Type | Description |
|---|---|
| int |