/koko-aio-slang

Multi purpose crt shader for retroarch

Primary LanguageC++GNU General Public License v3.0GPL-3.0

Koko-aio

Koko-aio shader is meant to be an all-in one crt shader.
It can be configured with many parameters, so that can be scaled to run on even on modest gpus while still developed to run with heavier presets on at least Haswell+ iGpus.
On that gpu, as in version 3.5, it reaches about 85fps with all features enabled
When dealing with lowres content on 1920x1080 resolution.
While it is not meant to simulate the internal behaviour of CRT displays,
it aims to give users "visual" parameters to make their monitors look similar.
Several presets are included.

Additional documentation:

Additional artwork:

Actually, it provides emulation/support for:

  • Color corrections (Gamma, contrast, saturation, luminance, vibrance, color temperature adjustments)
  • B/W display "colorization"
  • FXAA Antialiasing
  • RF Noise
  • Dedithering
  • NTSC/PAL CVBS color bleeding and Artifacts
  • Phosphor persistance
  • Deconvergence
  • Gaussian blurring/sharpening
  • Phosphor Glow
  • Tate mode
  • Scanlines
  • Interlacing
  • Double scanning
  • Multiple phosphors layout
  • Aperture grille, slot mask, shadow mask.
  • Moire mitigation strategies
  • Dot martix with ghosting
  • Haloing, Blooming
  • Curvature
  • Bezels with realistic reflections (Thank you HyperspaceMadness for allowing me to rip his automagically generated bezel!)
  • Background, Foreground and Backdrop images
  • Ambient lighting with realistic illumination
  • Vignette, spotlight
  • Full screen glowing
  • Integer Scaling
  • Tilting
  • Light on power consumption

External code by:

  • Nvidia (FXAA)

Examples from NG version

Dynamic Ambient light examples

Hires content

Overmasked

Ntsc selective blurring and sharpening

Antialiased

Mask experiments

ffmpeg player

Handhelds

Old screenshots from 3.5

monitor-slotmask-bloom-bezelwider - Arcade - Final fight

monitor-Commodore_1084S-wider - Amiga - ProjectX SE

tv-PAL-my-old - Master System - Trans Bot

tv-NTSC-1 - Genesis - Sonic 2

tv-NTSC-2 - Snes - Aladdin

tv-aperturegrille-bloom-bezel - Amiga - Leander