dunno about “raw capture” people do all sorts of weird shit with their console these days lol
I just meant video capture from the console as opposed to a photo.
It’s kind of a moot point for me because I’m going to continue playing GB games in the correct AR because Retroarch lets me do that
I just kinda want to know what SGB did out of pure curiosity at this point.
oh gotcha. This doc seems to go through it well enough from a game dev / romhacker’s perspective, but it doesn’t have a whole lot from the SNES/emudev side: http://hisimon.dk/misc/pandocs/#sgb-description
And yeah, everyone should do what looks right to them
I thought you might have just copied and pasted the names in the search and it would have shown up.
My presets are posted in this thread, you just have to go back a little.
You’ll need this as well.
Here are some examples from the latest updates to my presets.
CyberLab Mega Bezel Death To Pixels (Arcade & Composite - Sharp) - 15-09-21
LOL!! Amazing!!! Can you share it? Looks very very well!!!
Thanks
Is this an actual photo of the screen?
edit: NVM, it’s a screenshot.
The real challenge IMO is a close up photo of the LCD screen. With just the right amount of camera blur and the right shader settings it’s possible to take photos that are nigh identical to close-ups of a CRT.
this is pretty hard to do unless you have a high-end phone or camera. I tried with my phone and had a hard time with focus I had luck only once!
It’s tricky, but possible. Taken with an iPhone camera:
You can still kinda see the pixel grid, this is a 1080p screen though. At 4K I think you could make the grid unnoticeable.
greetings to all i’m still playing on a sony kvb aperture grill and I’ve been working for a month on a shader preset that looks like my crt…
the shader uses misc slang? with crt royale??? shader parameter greetings to all i’m still playing on a sony kvb aperture grill the proof here… and I’ve been working for a month on a shader preset that looks like my crt… here is where I am, all the details are in the video
the shader uses misc slang? with crt royale??? https://drive.google.com/file/d/1oOOX7uG59pKejCNN8iXfBqfOX4_i-bnv/view?usp=sharing
shaders = "13"
shader0 = "shaders_slang/misc/grade.slang"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
shader1 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-first-pass-linearize-crt-gamma-bob-fields.slang"
filter_linear1 = "false"
wrap_mode1 = "clamp_to_border"
mipmap_input1 = "false"
alias1 = "ORIG_LINEARIZED"
float_framebuffer1 = "false"
srgb_framebuffer1 = "true"
scale_type_x1 = "source"
scale_x1 = "1.000000"
scale_type_y1 = "source"
scale_y1 = "1.000000"
shader2 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-scanlines-vertical-interlacing.slang"
filter_linear2 = "true"
wrap_mode2 = "clamp_to_border"
mipmap_input2 = "false"
alias2 = "VERTICAL_SCANLINES"
float_framebuffer2 = "false"
srgb_framebuffer2 = "true"
scale_type_x2 = "source"
scale_x2 = "1.000000"
scale_type_y2 = "viewport"
scale_y2 = "1.000000"
shader3 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-bloom-approx.slang"
filter_linear3 = "true"
wrap_mode3 = "clamp_to_border"
mipmap_input3 = "false"
alias3 = "BLOOM_APPROX"
float_framebuffer3 = "false"
srgb_framebuffer3 = "true"
scale_type_x3 = "absolute"
scale_x3 = "320"
scale_type_y3 = "absolute"
scale_y3 = "240"
shader4 = "shaders_slang/blurs/blur5fast-vertical.slang"
filter_linear4 = "true"
wrap_mode4 = "clamp_to_border"
mipmap_input4 = "false"
alias4 = ""
float_framebuffer4 = "false"
srgb_framebuffer4 = "true"
scale_type_x4 = "source"
scale_x4 = "1.000000"
scale_type_y4 = "source"
scale_y4 = "1.000000"
shader5 = "shaders_slang/blurs/blur5fast-horizontal.slang"
filter_linear5 = "true"
wrap_mode5 = "clamp_to_border"
mipmap_input5 = "false"
alias5 = "HALATION_BLUR"
float_framebuffer5 = "false"
srgb_framebuffer5 = "true"
scale_type_x5 = "source"
scale_x5 = "1.000000"
scale_type_y5 = "source"
scale_y5 = "1.000000"
shader6 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-mask-resize-vertical.slang"
filter_linear6 = "true"
wrap_mode6 = "clamp_to_border"
mipmap_input6 = "false"
alias6 = ""
float_framebuffer6 = "false"
srgb_framebuffer6 = "false"
scale_type_x6 = "absolute"
scale_x6 = "64"
scale_type_y6 = "viewport"
scale_y6 = "0.062500"
shader7 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-mask-resize-horizontal.slang"
filter_linear7 = "false"
wrap_mode7 = "clamp_to_border"
mipmap_input7 = "false"
alias7 = "MASK_RESIZE"
float_framebuffer7 = "false"
srgb_framebuffer7 = "false"
scale_type_x7 = "viewport"
scale_x7 = "0.062500"
scale_type_y7 = "source"
scale_y7 = "1.000000"
shader8 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-scanlines-horizontal-apply-mask.slang"
filter_linear8 = "true"
wrap_mode8 = "clamp_to_border"
mipmap_input8 = "false"
alias8 = "MASKED_SCANLINES"
float_framebuffer8 = "false"
srgb_framebuffer8 = "true"
scale_type_x8 = "viewport"
scale_x8 = "1.000000"
scale_type_y8 = "viewport"
scale_y8 = "1.000000"
shader9 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-brightpass.slang"
filter_linear9 = "true"
wrap_mode9 = "clamp_to_border"
mipmap_input9 = "false"
alias9 = "BRIGHTPASS"
float_framebuffer9 = "false"
srgb_framebuffer9 = "true"
scale_type_x9 = "viewport"
scale_x9 = "1.000000"
scale_type_y9 = "viewport"
scale_y9 = "1.000000"
shader10 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-bloom-vertical.slang"
filter_linear10 = "true"
wrap_mode10 = "clamp_to_border"
mipmap_input10 = "false"
alias10 = ""
float_framebuffer10 = "false"
srgb_framebuffer10 = "true"
scale_type_x10 = "source"
scale_x10 = "1.000000"
scale_type_y10 = "source"
scale_y10 = "1.000000"
shader11 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-bloom-horizontal-reconstitute.slang"
filter_linear11 = "true"
wrap_mode11 = "clamp_to_border"
mipmap_input11 = "false"
alias11 = ""
float_framebuffer11 = "false"
srgb_framebuffer11 = "true"
scale_type_x11 = "source"
scale_x11 = "1.000000"
scale_type_y11 = "source"
scale_y11 = "1.000000"
shader12 = "shaders_slang/crt/shaders/crt-royale/src/crt-royale-geometry-aa-last-pass.slang"
filter_linear12 = "true"
wrap_mode12 = "clamp_to_border"
mipmap_input12 = "true"
alias12 = ""
float_framebuffer12 = "false"
srgb_framebuffer12 = "false"
scale_type_x12 = "viewport"
scale_x12 = "1.000000"
scale_type_y12 = "viewport"
scale_y12 = "1.000000"
g_gamma_in = "2.200000"
g_gamma_out = "2.200000"
g_signal_type = "0.000000"
g_crtgamut = "0.000000"
g_space_out = "3.000000"
g_Q_MUL = "0.000000"
g_lum_fix = "1.000000"
g_vignette = "0.000000"
g_vstr = "0.000000"
g_vpower = "0.000000"
g_cntrst = "-0.200000"
g_mid = "0.600000"
g_sat = "-0.000001"
g_vibr = "1.000000"
LUT_Size1 = "8.000000"
LUT_Size2 = "32.000000"
crt_gamma = "2.199990"
lcd_gamma = "2.499999"
levels_contrast = "0.671875"
diffusion_weight = "0.000000"
bloom_underestimate_levels = "0.000000"
bloom_excess = "0.505000"
beam_min_sigma = "0.375001"
beam_max_sigma = "0.000000"
beam_spot_power = "0.010000"
beam_max_shape = "2.000000"
beam_shape_power = "0.010000"
beam_horiz_sigma = "0.285000"
convergence_offset_x_r = "-0.300000"
mask_specify_num_triads = "1.000000"
mask_triad_size_desired = "1.000000"
mask_num_triads_desired = "160.000000"
aa_subpixel_r_offset_x_runtime = "0.000000"
aa_cubic_c = "0.000000"
aa_gauss_sigma = "0.060000"
geom_radius = "3.000000"
geom_aspect_ratio_x = "512.000000"
geom_aspect_ratio_y = "512.000000"
geom_overscan_x = "0.875000"
geom_overscan_y = "0.777343"
border_size = "0.005000"
border_darkness = "0.000000"
border_compress = "1.000000"
interlace_detect_toggle = "0.000000"
textures = "mask_grille_texture_small;mask_grille_texture_large;mask_slot_texture_small;mask_slot_texture_large;mask_shadow_texture_small;mask_shadow_texture_large;SamplerLUT1;SamplerLUT2;SamplerLUT3"
mask_grille_texture_small = "shaders_slang/crt/shaders/crt-royale/TileableLinearApertureGrille15Wide8And5d5SpacingResizeTo64.png"
mask_grille_texture_small_linear = "true"
mask_grille_texture_small_wrap_mode = "repeat"
mask_grille_texture_small_mipmap = "true"
mask_grille_texture_large = "shaders_slang/crt/shaders/crt-royale/TileableLinearApertureGrille15Wide8And5d5Spacing.png"
mask_grille_texture_large_linear = "true"
mask_grille_texture_large_wrap_mode = "repeat"
mask_grille_texture_large_mipmap = "true"
mask_slot_texture_small = "shaders_slang/crt/shaders/crt-royale/TileableLinearSlotMaskTall15Wide9And4d5Horizontal9d14VerticalSpacingResizeTo64.png"
mask_slot_texture_small_linear = "true"
mask_slot_texture_small_wrap_mode = "repeat"
mask_slot_texture_small_mipmap = "false"
mask_slot_texture_large = "shaders_slang/crt/shaders/crt-royale/TileableLinearSlotMaskTall15Wide9And4d5Horizontal9d14VerticalSpacing.png"
mask_slot_texture_large_linear = "true"
mask_slot_texture_large_wrap_mode = "repeat"
mask_slot_texture_large_mipmap = "true"
mask_shadow_texture_small = "shaders_slang/crt/shaders/crt-royale/TileableLinearShadowMaskEDPResizeTo64.png"
mask_shadow_texture_small_linear = "true"
mask_shadow_texture_small_wrap_mode = "repeat"
mask_shadow_texture_small_mipmap = "false"
mask_shadow_texture_large = "shaders_slang/crt/shaders/crt-royale/TileableLinearShadowMaskEDP.png"
mask_shadow_texture_large_linear = "true"
mask_shadow_texture_large_wrap_mode = "repeat"
mask_shadow_texture_large_mipmap = "true"
SamplerLUT1 = "shaders_slang/crt/shaders/guest/lut/sony_trinitron1.png"
SamplerLUT1_linear = "true"
SamplerLUT1_wrap_mode = "clamp_to_border"
SamplerLUT1_mipmap = "false"
SamplerLUT2 = "shaders_slang/crt/shaders/guest/lut/sony_trinitron2.png"
SamplerLUT2_linear = "true"
SamplerLUT2_wrap_mode = "clamp_to_border"
SamplerLUT2_mipmap = "false"
SamplerLUT3 = "shaders_slang/crt/shaders/guest/lut/other1.png"
SamplerLUT3_linear = "true"
SamplerLUT3_wrap_mode = "clamp_to_border"
SamplerLUT3_mipmap = "false"
really happy with the clean rendering like my reference sony crt… no improvement of the core beetle psx hw resolution x1, native dithering, no filter, no anti aliasing, no anistrope, just the shader filtering a raw image…
Trinitrons used aperture grille and you’re using a slotmask, just saying. Looks good man, have fun. You’re doing it right.
I’m ded.
The sass is so real rn.
thanks for the slot mask precision, but the oled is wrgb… I don’t see any difference … I really try to be faithful to my crt, and especially to have a nice contrast image even with the bfi
here my crt sony kvb slot mask? aperture grill?
my LG C9 is WRGB but the white pixel is only engaged under certain conditions. It’s not an always on kind of thing.
Conditions? Can you tell me exactly what these conditions are? Because my tv. doesn’t have the white pixel activated or not.
He probably can’t. As it’s almost for certain they’re being used to bright boost and to add contrast when needed. (Ie. It’s not something he has control of) So it’s whenever it’s called for really. (Could be a contrast threshold being hit or a brightness one, these could be reached activates them)
That’s what I think too, it’s not an option available on my oled panasonic ez950… I hear about this several times, but it is not available on the manual of the TV, nor anywhere. But some lg oled users on the forums here… Say that. Who to believe? What to believe? For me the wrgb is not a problem, neither for the mask, nor for the scanlines… The W is just to increase the life of the diodes…the white is made by RGB at 100% that wears out the 3 colors, then the white diode is there to compensate for that…lighting a white diode does not wear out the 3 RGB diodes… (there is other explanation but I will not enter in details here…).
It’s not an issue of wear but of subpixel spacing. The subpixel spacing using an RGB mask with an RGBW pixel structure looks like this
RxxWxGxWxxBWRxxW etc
Thus you get very irregular spacing of the subpixels and color shifts as a result of the active subpixels not being regularly spaced.
Compare this to the magenta-green pattern using a standard RGB subpixel structure:
RxBxGxRxBxGx etc.
The ultimate goal is to have emulated phosphors that resemble actual crt phosphors when you take a photo of the lcd (not a screenshot).