Configuring CRT-Easymode

[QUOTE=John.Merrit;29334]Nesguy, why not try and create a overlay where you use the overlay for the increased brightness ? A overlay would be cheap, performance wise, and should run on older hardware. You could add any wanted increase in HDR, brightness/contrast/color etc… to the overlay itself, and avoid messing with the shader. For example. You could use Photoshop and create a fullsize, fullscreen white overlay, with whatever transparency setting you want, and use the alpha channel’s layer parameters (Lighten, Darken, Multiply, etc…) try Overlay, and adjust the opacity levels to suit. When used in Retroarch, the overlay should add brightness, contrast, etc… to your image. And any increase wanted could then be tweaked in Photoshop, or even the shader.[/QUOTE]

I’m not sure that would work- I can see raising white level/black level and color, but I don’t think this gets around the inherent screen brightness limitation of the display. Anyway, even if possible, I don’t know enough about this stuff to do this without a huge amount of trial and error and it would be too time consuming for me. Maybe someone else with a little more knowledge wants to give this a shot?

I think I’m going to give up on the mask, at least until I have an OLED display, assuming that it’s bright enough. There are too many compromises and adjustments that have to be made, and the enhancement to picture quality is actually pretty negligible IMO. Setups using only scanlines and the right amount of blur can look just as good, if not better. In short, the results aren’t really worth the effort, even if you manage to get it right.

This was a fun shader to play around with, but I think I’m going to switch back to crt-hyllian. It does everything I want minus the mask, and it seems to run slightly better on my refurbished dual core workstation that I’ve converted into an emu box. Crt-easymode was actually pushing this system to its limits, and it’s fully overlocked.

[QUOTE=Nesguy;29313]Thanks! That helps quite a bit - see the results below. Honestly, I see very little to complain about in my latest shots that isn’t a limitation of 1080p resolution. This is coming very close to the real thing.

Is there a limit to how high gamma can be pushed? I don’t really understand gamma very well, to be honest. Does it adjust the black level and the white level at the same time? Or does it try to raise the brightness of the middle range without altering black/white level? I’ve never really understood it.

Do you have any further suggestions for brightness/gamma adjustment based on my latest shots/settings? I think contrast could be a little higher and that the color might still be a little washed out in some areas. [/QUOTE]

You can raise the output gamma to whatever you like. It doesn’t effect the black or white level, just the in-between colors.

I don’t have any more suggestions for settings.

[QUOTE=Nesguy;29332]Is there any way that the automatic brightness adjustment can be added to the regular version of CRT-easymode? I think there are too many variables to consider when trying to emulate a mask and scanlines if the goal is maintaining color, brightness and contrast. I’ve been fiddling for days and while I’ve gotten results that I think are okay, I feel there is still some slight room for improvement.

The halation version is just a tad too intense for older systems, while the regular version of easymode runs fine on my old dual core workstation. This makes it ideal for MAME cabs/ emu boxes. An automatic brightness adjustment for the regular version of crt-easymode would be really useful to this group of users.[/QUOTE]

I’m of two minds about this. I could add the new features to the regular shader, but not without altering the look and performance of it. On the other hand, I could try to further optimize the halation shader and give users the option to toggle further performance boosts by commenting out definitions (disabling unwanted features) at the top of the file. I’m leaning toward the latter.

Edit (I missed the post below):

[QUOTE=Nesguy;29357]I’m not sure that would work- I can see raising white level/black level and color, but I don’t think this gets around the inherent screen brightness limitation of the display. Anyway, even if possible, I don’t know enough about this stuff to do this without a huge amount of trial and error and it would be too time consuming for me. Maybe someone else with a little more knowledge wants to give this a shot?

I think I’m going to give up on the mask, at least until I have an OLED display, assuming that it’s bright enough. There are too many compromises and adjustments that have to be made, and the enhancement to picture quality is actually pretty negligible IMO. Setups using only scanlines and the right amount of blur can look just as good, if not better. In short, the results aren’t really worth the effort, even if you manage to get it right.

This was a fun shader to play around with, but I think I’m going to switch back to crt-hyllian. It does everything I want minus the mask, and it seems to run slightly better on my refurbished dual core workstation that I’ve converted into an emu box. Crt-easymode was actually pushing this system to its limits, and it’s fully overlocked.[/QUOTE]

Actually, if the regular shader was pushing your system to it’s limits then, I doubt I can get the halation shader running on your system. Oh well.

Also I have a 1080p LG OLED. Unfortunately since it doesn’t use a standard subpixel structure, mask emulation doesn’t look correct on it :frowning:

Hello, I really like the bloom/glow effect of the CRT-Royale shader, I think I’ve reached a somewhat similar effect on CRT-EasyMode Halation by raising its diffusion setting, am I doing it right? If I want to bloom the brighter pixels which settings should I change? Thank you.

[QUOTE=Hamiroshi;31171]Hello, I really like the bloom/glow effect of the CRT-Royale shader, I think I’ve reached a somewhat similar effect on CRT-EasyMode Halation by raising its diffusion setting, am I doing it right? If I want to bloom the brighter pixels which settings should I change? Thank you.[/QUOTE]

Yeah, raise the diffusion or halation parameters for a glowing effect around bright pixels. The only difference between these two settings is that halation will have the mask pattern (the RGB tinted dots) show up within the glow. It’s a minor difference.

Thanks.

Which one should I use to simulate a CRT TV better, the Halation or the Diffusion? I’m using both,0.3 for the Halation and 0.10 for the Difusion, with Type 1 mask and no interlace.

Which settings do you recommend for a good Halation and Diffusion?

[QUOTE=Hamiroshi;31367]Thanks.

Which one should I use to simulate a CRT TV better, the Halation or the Diffusion? I’m using both,0.3 for the Halation and 0.10 for the Difusion, with Type 1 mask and no interlace.

Which settings do you recommend for a good Halation and Diffusion?[/QUOTE]

I like the default settings, personally. They’re a bit on the subtle side, so you may want to raise them to your own preference.

After trying just about every CRT and NTSC shader available, I finally settled in a combination of GTU v-50’s first two passes (for color blending and de-dithering) and custom settings of Easymode’s halation shader, trying to get the closest I could to my Philips 29" SDTV.

The thicker scanlines make integer scale a must. The lack of brightness caused by them would be close to unnacceptable too, but I was able to make it look excellent cranking contrast and backlight of my LCD monitor to maximum levels and using the color temperature controls to brighten it even further. It shines (didn’t want to use the brightness boost in the shader itself, because i felt it messed with the scanlines and mask, but I might be mistaken).

I’d much prefer using Mask Type 1.0 with 0.15-0.20ish mask strenght, but this leads to an even more severe version of those wavy patterns when vertically scrolling which I see in some shaders like crt-aperture and crt-hyllian, so I used 2.0 mask with fainter settings. Close enough and no wavyness.

These are my settings:

Shaders: 7

Shader 0: crt/shaders/gtu-v050/pass1 Filter: Don’t care Scale: 1x

Shader 1: crt/shaders/gtu-v050/pass2 Filter: Nearest Scale: 1x

Shader 2: crt/shaders/crt-easymode-halation/linearize Filter: Nearest Scale: 1x

Shader 3: crt/shaders/crt-easymode-halation/blur_horiz Filter: Nearest Scale: 1x

Shader 4: crt/shaders/crt-easymode-halation/blur_vert Filter: Nearest Scale: 1x

Shader 5: crt/shaders/crt-easymode-halation/threshold Filter: Nearest Scale: 1x

Shader 6: crt/shaders/crt-easymode-halation/crt-easymode-halation Filter: Linear Scale: Don’t care

Parameters: Composite Connection Enable 1: 1.00 Composite Connection Enable 2: 1.00 Signal Resolution Y: 256.00 Signal Resolution I: 99.00 Signal Resolution Q: 77.00 Gamma Input: 2.45 Retro Pixel Size: 0.84 Gamma Output: 2.10 Sharpness Horizontal: 0.00 Sharpness Vertical: 0.00 Mask Type: 2.00 Mask Strength Min.: 0.07 Mask Strength Max.: 0.07 Mask Size: 1.00 Scanline Strength Min.: 0.20 Scanline Strength Max.: 0.85 Scanline Beam Min.: 0.40 Scanline Beam Max.: 0.50 Geom Curvature: 0.00 Geom Warp: 0.00 Geom Corner Size: 0.00 Geom Corner Smoothness: 150.00 Interlacing Toggle: 1.00 Halation: 0.04 Diffusion: 0.02 Brightness: 1.00

My monitor settings:

For general use in the computer, I have it set to: Backlight: 50 Contrast: 91 Brightness: 37 Color temperature: R00/G00/B00

For these shaders, I’m using: Backlight: 100 Contrast: 100 Brightness: 45 Color Temperature: R+18/G+15/B+30

(the color temperature scale in my monitor goes from -30 to +30)

Screenshots:

1 Like

Edit #6: Sorry, this is the last edit, I swear. :grin: I kept making some small changes here and there. The new gamma settings are particularly a game changer for this preset. I updated the screenshots to reflect the latest settings.


Nah, my previous preset was ok, but the shadow mask was a bit distracting and overall I felt it still lacked authenticity. I decided to redo the job, again trying to mimic my own TV. Got really really closer this time and don’t want to do it again, so now I’m really settling (edit: kind of, lol).

Thank you, Easymode. Your shader is great!

This is probably quite blurry for most. That’s intended, since I just wanted to emulate an ordinary CRT with ordinary cables. Increasing “signal resolution Y” or disabling composite connection sharpens the image a little bit. Ignoring the GTU-v50 passes makes it look a lot like default Easymode, but to me this is almost like the difference between a normal CRT shader and no shader at all (much blockier).

Same shaders as before. BILINEAR FILTERING OFF.

Parameters: Composite Connection Enable 1: 1.00 Composite Connection Enable 2: 1.00 Signal Resolution Y: 224.00 Signal Resolution I: 103.00 Signal Resolution Q: 63.00 Gamma Input: 2.65 Retro Pixel Size: 0.84 Gamma Output: 2.02 Sharpness Horizontal: 0.00 Sharpness Vertical: 0.55 Mask Type: 2.00 Mask Strength Min.: 0.13 Mask Strength Max.: 0.13 Mask Size: 1.00 Scanline Strength Min.: 0.25 Scanline Strength Max.: 0.90 Scanline Beam Min.: 1.05 Scanline Beam Max.: 1.10 Geom Curvature: 0.00 Geom Warp: 0.00 Geom Corner Size: 0.00 Geom Corner Smoothness: 150.00 Interlacing Toggle: 1.00 Halation: 0.05 Diffusion: 0.03 Brightness: 1.00

Adding a lot of blue to the color temperature is important to make it look as vivid as a CRT. Most of them have a white point that is much much cooler than the standard 6500k of modern displays, even on “warm” settings.

I have my monitor now set at:

Backlight: 100 Contrast: 100 Brightness: 47 Color temperature: R-01/G+03/B+29

Screenshots:

2 Likes

Sorry to necro this old topic but this is still my favorite CRT shader. Simple to configure (I leave it at default settings though) and it has unobtrusive scanlines that give it that right amount of sharpness, though sometimes it’s TOO sharp. On old C64 games (VICE x64) like Mr. Do! or Champions of Krynn the individual pixels are too emphasized and it looks bad. How can I soften or blur it a bit yet still have that CRT-easymode scanline goodness?

You could try adjusting the “SHARPNESS_H” parameter in CRT-easymode to see if that does it for you, or you could try adding tvout-tweaks or tvout-tweaks-multipass. It works really well for adjustable blur/sharpness.

Thanks, I’ll try that. Here’s an example of Mr. Do! on the C64 VICE x64 core with CRT-easymode. Pixels look so razor sharp and separated that the pixelart in the artists’ original vision just gets lost, I suspect. However, I’m also using HUGE custom viewports that enlarge the C64’s default screen size removing those borders on top and bottom and that could be contributing to the problem. I don’t think these old games were meant to be seen on huge 43"+ modern LCD/plasma screens so all irregularities are magnified. Most games on most 8-bit/16-bit systems, however, look really nice with this shader but since I’m on a major C64 kick lately I’m trying to optimize it for that system. I already found a fantastic external color palette for VICE (colodore) that makes the C64 colors really stand out and not look so muted like they especially did on PAL systems.

At this point it’s difficult/impossible to tell what the artist’s exact intentions were. Most pixel artists worked on CRT computer monitors which were considerably sharper than the average TV, but some artists also worked with a dual monitor setup where one of the displays was a TV using a composite video connection, to see what the art would look like when displayed on a regular TV.

I personally love the way RGB monitors look for all eras of content; I’m not a fan of very blurry displays and I love what prominent scanlines do for pixel art. I also think that CRT shaders at 1080p definitely leave something to be desired; they somehow always look either too blurry or too sharp to me no matter how they’re configured. LCDs just aren’t great displays, particularly for 240p content. Plasmas are a lot better, but my plasma TV still doesn’t compare to my CRT monitor for 240p content.

I think you’re right that 240p content wasn’t meant to be displayed on the giant displays we use today. I always recommend people sit a bit farther back from their displays when viewing 240p content so that the cognitive low-pass filter can do its job.

2 Likes