Difference between revisions of "Shaders and filters"

From Emulation General Wiki
Jump to navigation Jump to search
(CRT shaders: Made the section a bit less confusing, hopefully)
Line 16: Line 16:
 
===CRT shaders===
 
===CRT shaders===
  
These replicate Aperture Grille CRTs. These have sharp images and strong scanlines. Shadow-mask CRTs are far more common. However, to replicate that that one would need a very high resolution display (4K or around there). For this reason, shaders replicating Aperture Grille CRts are all that we will see for the time being.
+
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.
 
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.

Revision as of 15:37, 4 June 2013

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