Shaders and filters

From Emulation General Wiki
Revision as of 15:37, 4 June 2013 by 100.40.49.22 (talk) (CRT shaders: Made the section a bit less confusing, hopefully)
Jump to navigation Jump to search

Work in progress. Please add to it. Images needed.

File formats

  • .cg - Cg shader, implemented in RetroArch, OpenEmu and Snes9x/Win32. Spec: Cg shader spec.
  • .filter - Works in old bsnes and Retroarch. Not current Higan. Filters from bsnes v82 and below work in RetroArch.
  • .cgp - Meta shader. Can stack several .cg files on top of one another.
  • .glsl/.glslp - Same as .cg and .cgp, except using GLSL instead of Cg. Intended to replace the .shader spec in RetroArch.

Types

CRT shaders

These replicate aperture grille CRTs, which have sharp images and strong scanlines. If you find that this doesn't look a damn thing like your old TV, it's probably because you owned a shadow-mask style CRT, which has no scanlines (the easiest way to tell the difference is to feel the curve of the screen; aperture grilles only curve horizontally if at all). Unfortunately, shadow masks require resolutions of upwards of 3000x4000 to emulate accurately, so all we have for the time being are aperture grille shaders.

Use integer scaling. This means either using windowed mode (x2,x3,x4) or setting an integer scaling option in the video options. The reason is that non-integer scaled scanlines will result in uneven lines with artifacts.

NTSC filters

These replicate the cables used to connect the system to the TV. They vary in quality, with the lowest being RF, then composite, then s-video and RGB (scart) being the highest quality. They are created by blargg. They are in .filter format.

Download:

Win32 Win64  Linux32  Linux64 MacOS

Downloads

https://github.com/libretro/common-shaders

http://www.emucr.com/2013/04/snes9x-cg-shaders-pack-20130427.html

Further reading

All things shaders and filters