New CRT shader from Guest + CRT Guest Advanced updates

Ok the edited shaders work fine on PC, but they do not work on my Odin.

The AYN Odin is an android based device. All released shaders work, but these edited ones do not. It really looks like it is Retroarch for Android that is the problem.

So back to square one. Is there a way to find out what these settings are named in the menu? Because I can edit shader parameters in the shader menu.

1 Like

Just edit some parameters on Odin and save the preset. Then replace the parameter section with the parameters you want to replace honoring the spacing and placing.

You can also study logs if they tell the type of error you are getting.

Otherwise it sounds like community presets aren’t working on Android which would be really annoying. But there aren’t other reports about this special issue.

You are also able to open the shade files (like in shaders/guest/advanced…) and study the parameter connection there. Currently i’m not planning to include the parameter names in menu entries, maybe some day in the documentation when it’s ready.

1 Like

New Release Version (2023-10-28-r1):

Notable changes:

  • Grade “replacement” shader updated to the newest repo grade version.
  • New “Lite” version added (caa. 25% faster than standard version).
  • It handles scanlines and filtering differently, non-essential options are removed.
  • TATE mode is supported.
  • Very nice for games with more basic graphics (NES, PC-Engine…).

Download link:

https://mega.nz/file/ZoQhQbpT#SortjJdoRr0JfE2inny66j4DZ04LjEkbkfDmnhy1JwM

13 Likes

Nice. What better way to start the day than with a brand new guest.r shader update :beer:

5 Likes

To not have plans to include the names is super fair. I really hate to lay anything at all on you because your doing this for free and its like…incredible. But I was thinking of a “parameter to menu name conversion table” so I could look them up myself, but same here, it was just an idea for being able to lie in the sofa, play games through 8bitpro controller and also being able to try some parameters you see from the forum. Super luxuary, just a crazy idea for my own use.

But to the problem matter at hand. I did get it to work. But it feels kinda buggy for the Android. Not your shaders, but the app iteself.

  1. I do know how to do it now, I did it entirely on PC from edit to test on a snes game in Retroarch for PC and it worked. Super stable, super FPS, no problems at all.
  2. Exact same file emailed didnt work on Android (failed to load shader). Why? No idea.
  3. Today I downloaded the new pack, loaded the “HD” and changed saturation and brightness and saved it. This file immediately failed to load.
  4. I did the same thing again as in nr.3 and it worked. Why? No idea. I feel its Retroarch on Android that is a little glitchy.
  5. I now have a preset that I saved and I can load, so to be sure not to contaminate anything I used Android “sublime editor” and pasted the parameters and drumroll it loads beautifully. :star_struck:
  6. I also made my own presets for fastest and lite, and all are working.

Conclusion for me is that something gets contaminated when saving on notepad in pc and then sending to Android via email, or sharing via google drive, none of that did ever work. Editing directly on Android does work.

3 Likes

One thing about shaders on RetroArch Android is that the shaders folder is placed in the root of the SD card so it’s not accessible unless your android device is rooted. Assuming that you aren’t rooted let’s try a different method for your shaders, we’ll try moving the shaders folder where you can access it.

If you open the RetroArch directory setting the default location for the shaders folder should look like this:

We’re going to switch the location to your RetroArch folder in your SD card so the first thing you should do is go into the RetroArch folder on your Android device and create a folder called “shaders”. From there re open RetroArch, go back to the directory and change the shaders folder to the newly created shaders folder so that it now looks like this:

Now open RetroArch once more and update your shaders and they should appear now in the new shaders folder:

You should now be able to edit/create and do the things you mentioned from that folder. Hope that helps. Not to mention you should be able to use my presets that way as well.

4 Likes

After all this - A screenshot from the 10/24 release on PC before any tuning. This shader will be for my Arcade games like Dangar etc, but I dont have those games here so here is Ys V on Snes. To me this is a super cool starting point for games that came on screens like this.

I forgot to change back brightness and saturation so here is a better one:

2 Likes

Super nice of you to help, but I can already use the shaders that I navigate in files from internal storage/retroarch/shaders. I have Retroarch installed in the internal memory, and only use SD-card for games. All my guest advanced, my own presets and stock shaders are there. I have always had the possibility to edit the shaders through the shader menu and save as new presets, I have done this for all my systems, the problem started when I tried to copy/paste parameters into the preset files. But I got it to work.

The path to shader in my directories is: /storage/emulated/0/Retroarch/shaders

3 Likes

Ah I see I see. Glad you got everything sorted then.

3 Likes

Hello @guest.r , there is a problem with clip saturated color beams while using negative values. Only on the lite version.

Default preset without any modifications —>

1 Like

New Release Version (2023-10-28-r2):

Notable changes:

  • Grade “replacement” shader updated to the newest repo grade version.
  • New “Lite” version added (caa. 25% faster than standard version).
  • It handles scanlines and filtering differently, non-essential options are removed.
  • TATE mode is supported.
  • Very nice for games with more basic graphics (NES, PC-Engine…).
  • UPDATE: clip saturated color beams functionality fixed for negative values (thanks @ProfessorBraun).

Download link:

https://mega.nz/file/VkZhQbgS#t_LGhTR-9zrZ1CyYkU-CutiyKr9jf_slTOEMT-xtXvM

14 Likes

I wanted to try something different this time,my goal was to use halation as a replacement of glow and magic glow while keeping a specific render in bright scanlines,colors etc. I didn’t modify anything in guest folder this time compared to my last preset.

So I share this if someone is interessed at this kind of look. :raising_hand_man:

Lite preset–>

GAMMA_INPUT = "2.500000"
gamma_out = "2.200000"
m_glow = "1.000000"
m_glow_cutoff = "0.000000"
m_glow_low = "0.500000"
m_glow_high = "0.000000"
m_glow_mask = "0.000000"
glow = "0.000000"
bloom = "2.000000"
halation = "0.025000"
bmask1 = "0.725000"
hmask1 = "0.000000"
brightboost = "1.000000"
brightboost1 = "1.000000"
scanline1b = "20.000000"
scanline2b = "20.000000"
scanline1d = "20.000000"
scanline2d = "20.000000"
beam_min = "1.350000"
beam_max = "1.350000"
beam_size = "0.000000"
scans = "1.000000"
shadowMask = "2.000000"
maskstr = "1.000000"
mcut = "2.000000"
mask_zoom = "3.000000"
mask_layout = "1.000000"
maskDark = "0.000000"
maskLight = "2.000000"
mask_gamma = "2.500000"
post_br = "1.250000"
5 Likes

Another sexy post from you. I meant to ask but what settings did you use for aperture grille and Slot Mask in this post?

2 Likes

Hey there :wave:, all pictures use same settings except for mask and sharpness.

You can use the preset you posted above in the discussion with slot mask strength 1.0 (high and low) instead.

And aperture grille is using default for sharpness and glow radius/sigma.

2 Likes

Testing a slot mask preset with the lite version.

vigstr = "0.400000"
gamma_out = "2.250000"
m_glow = "1.000000"
FINE_BLOOM = "3.000000"
mask_bloom = "-0.750000"
clips = "0.500000"
scanline1b = "4.000000"
scanline2b = "11.000000"
scanline1d = "5.000000"
scanline2d = "11.000000"
scans = "1.200000"
h_sharp = "1.000000"
s_sharp = "0.140000"
warpX = "0.040000"
warpY = "0.050000"
csize = "0.070000"
bsize1 = "0.070000"
shadowMask = "9.000000"
maskstr = "1.000000"
maskboost = "1.500000"
mask_zoom = "1.000000"
mask_gamma = "2.000000"
slotmask = "1.000000"
slotmask1 = "1.000000"
smoothmask = "1.000000"
smask_mit = "0.500000"
deconrr = "0.500000"
deconrb = "-0.500000"
deconrry = "0.500000"
deconrby = "-0.500000"
decons = "2.000000"
10 Likes

Out of curiosity, what changed in regard of scanline handling in the lite version?

1 Like

Scanline type option was removed (also for some performance). Instead the user can now select scanline shape options for bright and dark pixels separately. I didn’t include this specific setup options for other versions, because it would break preset compatibility, but they have some workarounds instead.

3 Likes

That looks amazing. I never manually copied values to a shader. Could you explain where I have to copy these in which file? Thanks

1 Like

Thanks ! Just copy everything in a text document with notepad or else. I included the passes to make it easier for you. And rename your .txt file to whatever you want and .slangp at the end. (ex: test.slangp)

The modifications we make are always between the last pass and textures (ex: scale_y10 = “1.000000” and textures = “SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4”)

shaders = "11"
shader0 = "shaders_slang/crt/shaders/guest/lite/stock.slang"
filter_linear0 = "false"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
scale_type_x0 = "source"
scale_x0 = "1.000000"
scale_type_y0 = "source"
scale_y0 = "1.000000"
shader1 = "shaders_slang/crt/shaders/guest/lite/stock.slang"
filter_linear1 = "false"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "StockPass"
float_framebuffer1 = "false"
srgb_framebuffer1 = "false"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/guest/lite/afterglow0.slang"
filter_linear2 = "false"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "AfterglowPass"
float_framebuffer2 = "false"
srgb_framebuffer2 = "false"
scale_type_x2 = "source"
scale_x2 = "1.000000"
scale_type_y2 = "source"
scale_y2 = "1.000000"
shader3 = "shaders_slang/crt/shaders/guest/lite/pre-shaders-afterglow.slang"
filter_linear3 = "false"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "true"
alias3 = "PrePass"
float_framebuffer3 = "false"
srgb_framebuffer3 = "false"
scale_type_x3 = "source"
scale_x3 = "1.000000"
scale_type_y3 = "source"
scale_y3 = "1.000000"
shader4 = "shaders_slang/crt/shaders/guest/lite/linearize.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = "LinearizePass"
float_framebuffer4 = "true"
srgb_framebuffer4 = "false"
scale_type_x4 = "source"
scale_x4 = "1.000000"
scale_type_y4 = "source"
scale_y4 = "1.000000"
shader5 = "shaders_slang/crt/shaders/guest/lite/gaussian_horizontal.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = ""
float_framebuffer5 = "true"
srgb_framebuffer5 = "false"
scale_type_x5 = "absolute"
scale_x5 = "800"
scale_type_y5 = "source"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/guest/lite/gaussian_vertical.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = "GlowPass"
float_framebuffer6 = "true"
srgb_framebuffer6 = "false"
scale_type_x6 = "absolute"
scale_x6 = "800"
scale_type_y6 = "absolute"
scale_y6 = "600"
shader7 = "shaders_slang/crt/shaders/guest/lite/bloom_horizontal.slang"
filter_linear7 = "true"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = ""
float_framebuffer7 = "true"
srgb_framebuffer7 = "false"
scale_type_x7 = "absolute"
scale_x7 = "800"
scale_type_y7 = "absolute"
scale_y7 = "600"
shader8 = "shaders_slang/crt/shaders/guest/lite/bloom_vertical.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "false"
alias8 = "BloomPass"
float_framebuffer8 = "true"
srgb_framebuffer8 = "false"
scale_type_x8 = "source"
scale_x8 = "1.000000"
scale_type_y8 = "source"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/guest/lite/crt-guest-advanced-lite.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "false"
alias9 = ""
float_framebuffer9 = "true"
srgb_framebuffer9 = "false"
scale_type_x9 = "viewport"
scale_x9 = "1.000000"
scale_type_y9 = "viewport"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/guest/lite/deconvergence.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = ""
float_framebuffer10 = "false"
srgb_framebuffer10 = "false"
scale_type_x10 = "viewport"
scale_x10 = "1.000000"
scale_type_y10 = "viewport"
scale_y10 = "1.000000"
AS = "0.000000"
GAMMA_INPUT = "2.500000"
gamma_out = "2.200000"
m_glow = "1.000000"
m_glow_cutoff = "0.000000"
m_glow_low = "0.500000"
m_glow_high = "0.000000"
m_glow_mask = "0.000000"
glow = "0.000000"
bloom = "1.850000"
halation = "0.025000"
bmask1 = "0.725000"
hmask1 = "0.000000"
brightboost = "1.000000"
brightboost1 = "1.000000"
scanline1b = "20.000000"
scanline2b = "20.000000"
scanline1d = "20.000000"
scanline2d = "20.000000"
beam_min = "1.375000"
beam_max = "1.375000"
beam_size = "0.000000"
scans = "1.000000"
shadowMask = "2.000000"
maskstr = "1.000000"
mcut = "2.000000"
mask_zoom = "3.000000"
mask_layout = "1.000000"
maskDark = "0.000000"
maskLight = "2.000000"
mask_gamma = "5.000000"
post_br = "1.460000"
textures = "SamplerLUT1;SamplerLUT2;SamplerLUT3;SamplerLUT4"
SamplerLUT1 = "shaders_slang/crt/shaders/guest/advanced/lut/trinitron-lut.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "shaders_slang/crt/shaders/guest/advanced/lut/inv-trinitron-lut.png"
SamplerLUT2_linear = "true"
SamplerLUT2_wrap_mode = "clamp_to_border"
SamplerLUT2_mipmap = "false"
SamplerLUT3 = "shaders_slang/crt/shaders/guest/advanced/lut/nec-lut.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
SamplerLUT4 = "shaders_slang/crt/shaders/guest/advanced/lut/ntsc-lut.png"
SamplerLUT4_linear = "true"
SamplerLUT4_wrap_mode = "clamp_to_border"
SamplerLUT4_mipmap = "false"

This is an improved version by the way. :grinning:

3 Likes

I did some tests and there is a combination of 3 settings that I like. So I wanted to use “smooth masks in bright scanlines” on one of my preset, but the picture was not vivid as before in bright area. Then I lowered “scanline shape bright pixels” values but still it wasn’t enough.

And finally I increased “scanlines saturation/ masks falloff” to 1.0 instead of 0.5 and It worked :eyes:. The picture was very close to the original preset but with the benefit of smooth masks.

6 Likes