CathodeRetro::ScreenSettings
Index
Members
- distortion
-
Vec2 distortion = { 0.0f, 0.0f }Type
Vec2Description
A pair of
[0..1]values describing how much to distort the virtual screen.The
xvalue controls the horizontal distortion, and theyvalue controls the vertical distortion. A value of0means "no distortion along that axis."- These values are scaled to really max out at 1.0 - above 1.0 things get ... weird.
- It is recommended that these values never get too far from each other - too much distortion on one axis vs. the other doesn't look right.
- screenEdgeRounding
-
Vec2 screenEdgeRounding = { 0.0f, 0.0f }Type
Vec2Description
How much additional rounding of the edges we want to emulate a screen that didn't have a rectangular bezel shape. - cornerRounding
-
float cornerRounding = 0.0fType
floatDescription
How much to round the corners (to emulate an old TV with rounded corners). - maskType
-
MaskType maskType = MaskType::SlotMaskType
MaskTypeDescription
The variety of mask to use. - maskScale
-
float maskScale = 1.0fType
floatDescription
The scale of the mask on the screen. At 1.0there is one "tile" of the mask per input scanline. At2.0it is visually twice as large, making one tile per every two input scanlines. - maskStrength
-
float maskStrength = 0.0fType
floatDescription
How much the mask is multiplied with the on-screen image to produce the final output. A value of
0.0means the mask is invisible, where a value of1.0means that the mask is fully multiplied with the on-screen image.The math for this is:
maskedRGB = onscreenColor * lerp({white, maskRGB}, maskStrength) - maskDepth
-
float maskDepth = 0.5fType
floatDescription
The darkness of the spaces between the phosphors in the mask. Adjusting this will adjust both the brightness of the resulting image as well as the amount of visibility of the mask.
A value of
0means that the spaces between the phosphors are pure black. - phosphorPersistence
-
float phosphorPersistence = 0.0fType
floatDescription
How much of the previous frame to blend into the next frame: 0for "none" and1for "the previous frame is just as bright as the current frame. - scanlineStrength
-
float scanlineStrength = 0.0fType
floatDescription
A [0..1]value describing how strong the scanline effect is. - diffusionStrength
-
float diffusionStrength = 0.0fType
floatDescription
A [0..1]value describing how much the "glass" in front of the "phosphors" diffuses the light passing through it. - borderColor
-
Color borderColor = { 0.05f, 0.05f, 0.05f, 1.0f }Type
ColorDescription
The color around the edges of the screen, where there's no visible picture.