New CRT shader from Guest + CRT Guest Advanced updates

Hi everyone! Does anyone have any recommendations for settings to achieve a convincing PVM look? I know I could just use CyberLab’s presets, and I actually do when possible. However, I’m currently using ShaderGlass with a few standalone emulators that don’t support RetroArch shaders, so I’m looking for settings that can get me as close as possible to a good PVM appearance, preferably with the highest TVL possible for a 55-inch 4K TV (OLED C5). Any suggestions would be greatly appreciated!

2 Likes

ShaderGlass supports RetroArch Shaders. There’s also the WindowCast Core which you can use to capture any window and run it through RetroArch’s shader pipeline.

There’s also good ole Reshade.

1 Like

Sony PVM look should be quite doable, especially on a 4k display. I’m posting a 1440p screenie, TVL on 2160p should be quite higher.

Here are the parameters for crt-guest-advanced.slangp:

bloom = "0.700000"
bloom_dist = "1.000000"
bmask1 = "-0.200000"
gamma_c2 = "1.300000"
clips = "0.250000"
gsl = "2.000000"
scanline1 = "3.000000"
scanline2 = "14.000000"
beam_min = "2.500000"
beam_max = "1.500000"
scans = "2.000000"
h_sharp = "4.000001"
s_sharp = "1.000000"
smart_ei = "0.250000"
shadowMask = "6.000000"
maskstr = "1.000000"
maskboost = "1.250000"
mask_gamma = "1.700001"
mclip = "0.300000"
pr_scan = "1.000000"
edgemask = "0.400000"
deconrr = "0.750000"
deconrb = "-0.500000"
deconrry = "1.000000"
deconrby = "-0.500000"
decons = "1.500000"

The setup is a bit conservative, but it’s a base for anything more personalized.

4 Likes

Yeah, I noticed that ShaderGlass supports RetroArch shaders. Unfortunately, I haven’t been able to get satisfying HDR results with it, so I decided to stick with Guest Advanced instead.

Now I’m just trying to figure out how to configure Guest Advanced to achieve a high-TVL PVM look. With Megatron, it was so easy to just set it to something like 800–1000 TVL and it looked great. :sob:

If anyone has recommendations for Guest Advanced settings that get close to that kind of high-end PVM appearance, I’d really appreciate it.

1 Like

I’m playing Shadow Hearts, and I absolutely loved the result. It looks gorgeous. Thanks for the setup!

Out of curiosity, what would you consider a non-conservative setup?

1 Like

Thanks for trying the setup. A less conservative setup could go by reducing mask strength (to provide an even more high TVL feel) or using more dense masks (like 0, 5 or 9).

It could also add more scanline saturation, combined with stronger (de)convergence. The look could also be shifted a bit towards the BVM area.

I had to resort to web screenshots for a PVM look, there were different models and screen sizes involved, so the parameter combo looks more like a middle ground.

I hope I’m not taking too much of your time with all these questions. Since you mentioned that “the look could also be shifted a bit towards the BVM area,” I was wondering if you have any suggestions for a setup that’s specifically aimed at achieving a convincing BVM look. I’d be really interested to hear what settings you would use.

This is mostly out of curiosity, but more broadly, what do you think current CRT shaders are still missing to make them truly convincing? Are there any characteristics of real CRTs that you feel today’s shaders still don’t capture accurately?

1 Like

they still missing some, see Crt effects list and its replies

anyway, current CRT shaders are indeed getting better and better by the time

2 Likes

Here are parameters for a semi-conservative BVM look and crt-guest-advanced.slangp:

FINE_BLOOM = "3.000000"
glow = "0.000000"
mask_bloom = "0.500000"
gamma_c2 = "1.300000"
clips = "0.200000"
gsl = "1.000000"
scanline1 = "2.500000"
scanline2 = "36.000000"
beam_min = "2.250000"
beam_max = "1.600000"
scans = "1.000000"
scan_falloff = "0.500000"
h_sharp = "7.999998"
s_sharp = "1.200000"
smart_ei = "0.150000"
shadowMask = "9.000000"
maskstr = "0.700000"
mcut = "0.700000"
maskboost = "1.300000"
mzoom_sh = "0.250000"
mask_gamma = "1.000000"
mclip = "0.400000"
deconrr = "0.500000"
deconrb = "0.500000"
deconrry = "0.500000"
deconrby = "-0.500000"
decons = "1.500000"

Anyway, BVM presets usually need a 4k display to manifest properly, mostly scanlines can develop much better there.

Haven’t posted in this thread in a while, yo guest.r. So I came across a new setting called “Bloom Pixel Sampling”, not sure which release you added that in but without knowing anything about I turned it on, I seem to understand what it’s suppose to be doing to the image.

Here’s with the setting off:

With it on:

It’s best noticed at the top on top of the numbers and the the eyes of those skull faces, it goes off this extra hazy look. Is that the intended purpose of that setting? And if so is there another setting to dial it down some? It’s a really strong effect but it looks cool.

2 Likes

Heya Sonkun, glad to see you back!

It’s a bit tricky with “bloom sampling” and your presets, because they more or less depend on magic glow for mask mitigation, so the differences are rather small.

Bloom pixel sampling is otherwise quite nice to dissolve small checkerboards etc. with non-ntsc/pal versions and to introduce a smart-smoothing look, deal with gradients etc. The effect strength is controlled by bloom pass sampling, so it’s quite versatile.

Needless to say, that it looks better with 16 bit games, compared with 8 bit ones due to color options, distribution and usage.

1 Like

Thanks man I’m glad to be back, I should be around more regularly now for the most part.

I see. That “smart-smoothing look” is what I like the most from it, gives the image that hazy crt like vibe. I went back and tried it again adjusting the “fine bloom/halation sampling”, it seems to give a better balanced look on 3.

First here’s no bloom pixel sampling:

Bloom pixel sampling on:

Bloom pixel sampling with bloom sampling set to 3 and both vertical and horizontal bloom sigma settings lowered to .25:

It makes a small difference. I’m not sure if I’ll incorporate this feature or not but I’ll see as I continue tweaking in the lab.

8 Likes

@Jobima First, thank you so much for your work on porting CRT guest updates to to Reshade; Much appreciated. I noticed 2026-07.23 was released recently and thought I’d see if I could port it myself. Then I learned what steps are needed to convert slangp files to fx and thought… wow, that’s a lot of manual work. How do you do it? I’m thinking a script to parse the slangp file, then compile and convert the files. And then another script to merge the outputs, or something like that? I was not able to find any easy way to do it, so I was wondering if you could give a peak behind the curtain, so to speak.

I didnt make it from zero, it’s DevilSingh/HelelSingh port in the first place

anyway, to update it I do use compare/diff plugin in Notepad++ with slang versions so I know what changes, then I do the same changes in reshade manually

BTW, 2026-07.23 already ported but inside my preset of reshade since Jobima crt guest advanced presets

3 Likes

Wooowww, that’s hardcore. I also tested that approach but the shear size of the diff scared me away pretty fast. Much respect for you! And thanks for the link to your updated reshade presets. I will be trying that one later today.

Just did a test run of the 8.24 presets. Works like a charm. But I noticed that, although the shader is called guest_advanced, it seems to be the guest_ntsc version. A diff with the previous version seems to confirm this.

1 Like

it based on my preset (which is based on guest_ntsc version) as I said, so the defaults are changed and it has crt-black_crush-koko as I said

1 Like

Hey @guest.r, so I’m putting together some new rf type presets and I see the change up and how you dedicated a small section to just rf settings in the ntsc shader, it’s been a while since I tweaked any kind of rf anything but did you remove a setting by chance? I think it was labeled something like “static noise” or something, I really liked that setting but it doesn’t seem to be there anymore in your latest update.

New RF test screenie:

1 Like

Hmm…static noise (or any kind of dedicated noise) wasn’t present in older ntsc shader releases, but you can look under the deconvergence pass settings, where there is a decent parameter section for noise.

1 Like

That’s right it was right at the bottom where it’s always been, forgot it was down there the “add noise” setting in the negative values. That setting gives the image a nice “dirty” look, almost like looking at 90’s gaming magazine photos:

Off:

On:

Alright got RF presets done already, time to go make some new s-video presets.

3 Likes