Skip to content

Class TerminalScreenType

How one screen shows its session: texture filtering and the display effect. Every field takes effect while the screen runs, and screens showing the same session can each carry their own. A screen with none is a sharp flat copy.

Declaration
[CreateAssetMenu(fileName = "TerminalScreenType", menuName = "Terminal/Screen Type", order = 1)]
[Icon("Packages/com.darkeffekt.terminal/Editor/Icons/Assets/TerminalScreenType.png")]
public sealed class TerminalScreenType : ScriptableObject

Inheritance: System.Object -> UnityEngine.Object -> UnityEngine.ScriptableObject

True when the effect changes over time: the flicker and the rolling band on every frame, and persistence for a while after each change.

Declaration
public bool IsAnimated { get; }
Declaration
[Header("Display")]
[Tooltip("Point keeps cells razor sharp; Bilinear suits curved or distant screens.")]
public FilterMode outputFilter
Declaration
[Header("Effect")]
[Range(0, 1)]
public float scanlineIntensity
Declaration
[Tooltip("About how many scanlines cross one row of text. A line shows once it covers two display pixels; finer than that it dims the screen evenly.")]
[Range(1, 16)]
public int scanlinesPerRow
Declaration
[Tooltip("How far bright content fills the gaps between scanlines, as a wide beam does, so the lines show most in dark areas.")]
[Range(0, 1)]
public float scanlineBeam
Declaration
[Range(0, 1)]
public float apertureIntensity
Declaration
[Tooltip("Grille is vertical stripes, as on a Trinitron; Slot breaks them into staggered segments, as on most consumer TVs.")]
public ScreenMaskStyle maskStyle
Declaration
[Range(0, 0.25)]
public float curvature
Declaration
[Tooltip("Rounds the corners of the face, as a share of its height.")]
[Range(0, 0.5)]
public float cornerRadius
Declaration
[Range(0, 1)]
public float vignette
Declaration
[Range(0, 1)]
public float glow
Declaration
[Tooltip("A wide haze around lit areas, from light scattering inside the glass. Distinct from the tight glow.")]
[Range(0, 1)]
public float halation
Declaration
[Tooltip("Red and blue fringes, nil at the center and widest at the edges.")]
[Range(0, 0.01)]
public float chromaticAberration
Declaration
[Tooltip("A fixed misalignment of the three color guns, growing toward the corners.")]
[Range(0, 0.01)]
public float misconvergence
Declaration
[Tooltip("Seconds a trail takes to fade behind the cursor and scrolling text, as phosphor keeps glowing after the beam leaves. Zero for none.")]
[Range(0, 2)]
public float persistence
Declaration
[Tooltip("A brightness wobble over the whole screen.")]
[Range(0, 0.2)]
public float flicker
Declaration
[Tooltip("A dark band that rolls down the screen, as a tube's refresh shows on camera.")]
[Range(0, 1)]
public float rollingBand
Declaration
[Tooltip("How fast the band rolls, in screen heights a second. Negative rolls upward.")]
[Range(-2, 2)]
public float rollingBandSpeed
Declaration
[Tooltip("The band's height, as a share of the screen.")]
[Range(0.02, 0.6)]
public float rollingBandWidth
Declaration
[Tooltip("How far the band bends the picture sideways as it passes.")]
[Range(0, 1)]
public float rollingBandDistortion
Declaration
[Tooltip("Multiplies the final image. Tints phosphor looks green or amber.")]
public Color screenTint
Declaration
[Tooltip("How far the picture is drawn as a monochrome tube: its brightness lights the tint's phosphor, with a hot core toward white, so every color stays visible on a green or amber screen.")]
[Range(0, 1)]
public float phosphor
Declaration
[Tooltip("How gray the unlit screen reads under room light, in the tint's hue. Follows the power, so an off screen stays black.")]
[Range(0, 0.2)]
public float blackLevel
Declaration
[Tooltip("Light leaking in at the edges and corners of a panel, visible on dark content.")]
[Range(0, 1)]
public float backlightBleed
Declaration
[Tooltip("A faint ghost etched into the phosphor by content that sat still for years. Lit where the image is bright, laid over the whole face.")]
public Texture2D burnInImage
Declaration
[Range(0, 1)]
public float burnIn
Declaration
[Range(0, 2)]
public float brightness
Declaration
[Tooltip("How the panel fails behind a crack: the regions the cracks bound go dead or show stuck driver lines, in rows and columns, as an LCD does. Off, only the glass cracks and the picture shows through whole, as on a tube.")]
public bool damageLines
Declaration
[Header("Power")]
[Tooltip("How a screen of this type switches on and off: Tube collapses to a line and a dot, Fade suits a panel, and Cut is instant.")]
public ScreenPowerStyle powerStyle
Declaration
[Tooltip("Seconds a screen takes to switch on.")]
[Range(0, 5)]
public float powerOnSeconds
Declaration
[Tooltip("Seconds a screen takes to switch off.")]
[Range(0, 5)]
public float powerOffSeconds

The height of one scanline in grid pixels, for a grid whose cells are cellHeight pixels tall: a whole number, so lines stay even.

Declaration
public int ScanlinePitch(int cellHeight)

System.Int32

Type Name
System.Int32 cellHeight