Video Game Emulation Wiki
 
(18 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[File:Crt-geom.png|thumb|350px|crt-geom-flat]]
+
[[File:Retroarch_2013-07-22_17-21-17-60.png|thumb|298px|CRT-Geom-Flat, with default settings]]
====Download====
 
https://github.com/libretro/common-shaders/tree/master/crt
 
[[Category:FAQs]]
 
 
==Overview==
 
 
 
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 less noticeable 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.
 
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 less noticeable 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.
   
==CRT Geom==
+
==Download==
 
https://github.com/libretro/common-shaders/tree/master/crt
One of the more popular CRT shaders.
 
 
==Tweaking CRT Geom==
 
You can open up CRT Geom in notepad and edit it.
 
 
===Scanlines===
 
vec4 weights = vec4(distance / 0.3);
 
Raise the 0.3 to a higher value to make the scanlines brighter. I do not recommend going past 0.4, as at that point on bright colors scanlines completely disappear, and going further makes them appear again, but on the wrong field in said bright colors, which is inaccurate. Try 0.35.
 
 
===Curvature===
 
 
To make it flat, just set cornersize (line 107) to something small, like 0.001 and cornersmooth (line 110) to something large, like 8000.0. Then, comment out (i.e., put two slashes in front of it, like this: // ) line 141, #define CURVATURE.
 
 
Define Curvature. Something like that Comment it out. That means adding "//" in front of it. It should look like this when you're done:<br />
 
//#Define Curavture
 
   
===Interlacing===
+
==Types==
 
===CRT Geom===
  +
{{Main|CRT Geom}}
   
  +
Simulates an apperture grille. Very versatile and modable. One of the more popular CRT shaders. Visit the main article.
For the original, to disable interlacing, change this line:<br />
 
ilfac = vec2(1.0,floor(rubyInputSize.y/200.0));<br />
 
to the following:<br />
 
ilfac = vec2(1.0,1.0);
 
===Phosphor===
 
To disable phosphor emulation (which alternately tints pixels green and magenta), comment out the following lines, found at the bottom of the shader code:
 
   
  +
===Crt-cgwg.cg===
vec3 dotMaskWeights = mix(<br />vec3(1.0, 0.7, 1.0),<br />vec3(0.7, 1.0, 0.7),<br />floor(mod(mod_factor, 2.0))<br />);<br />mul_res *= dotMaskWeights;
 
   
===CRT Monitor variant===
+
===crt-caligari.cg===
   
  +
===Shadowmask===
If you're using a CRT monitor, you can use [http://www.mediafire.com/download/6ygh7saafpn7gm0/CRT-Geom_for_CRT_monitors.7z these] variants of CRT-Geom at 1280x960 full screen for an authentic 240p look. These variants are based on the flat variant with phosphor code commented out and the gamma correction disabled. There are three main variants (Normal, Sharp, Sharper), and each have different scanline brightness presets and interlacing enabled/disabled. As above, use integer scaling and force 4:3 aspect ratio. Some games may have black borders due to the full overscan area being visible, use your monitor's zoom function to zoom in and hide overscan. Also works with handheld games if you use the non-interlaced variant and force a 4x scale in RGUI.
 
  +
Hypothetical shadowmask shaders are being developed. Due to the nature of the shadowmask screen, 4K resolution is likely needed.
 
[[Category:FAQs]]
 
[[Category:FAQs]]
 
[[Category:Shaders/Filters]]

Latest revision as of 00:37, 26 July 2013

Retroarch 2013-07-22 17-21-17-60

CRT-Geom-Flat, with default settings

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 less noticeable 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.

Download

https://github.com/libretro/common-shaders/tree/master/crt

Types

CRT Geom

Main article: CRT Geom

Simulates an apperture grille. Very versatile and modable. One of the more popular CRT shaders. Visit the main article.

Crt-cgwg.cg

crt-caligari.cg

Shadowmask

Hypothetical shadowmask shaders are being developed. Due to the nature of the shadowmask screen, 4K resolution is likely needed.