I’ve tinkered around with creating shader presets for quite some time, and it’s extremely satisfying to see some of the results. I love cruising this forum to see what people make as well. I’ve not been able to truly create what I am looking for though and, after trying pretty intently for a couple weeks, I thought I’d seek some help/advice from those more learned in the subject than I am.
- Curved 31Khz CRT PC monitor connected via HDMI-to-VGA.
- I’m using CRTSwitchRes at 1920 width.
- It will generate perfect native scanlines at 240p on it’s own.
- It will ‘not’ display any resolution with interlacing on it’s own.
My preset Goal:
Create 3 presets that approximate the general look of RF, Composite, and a mostly clean variant that I will call ‘Component’. Also, since I’m using OpenGL, I’m only looking at glsl at the moment.
Proposed shader passes:
#1.) Color – Torn between NTSC-colors and LUT shaders. Looking to get something close to what a 1990 consumer set would have. (13" JVC VCR-Combo, if we want to get specific - but it doesn’t need to be that precise)
#2) Signal Quality – I need to learn more about what makes Composite, look like composite. I hear talk of artifacts, but not sure what I am looking for. (planning to skip this pass for the Component preset) I’ve tried ntsc, gtuv50, and tv-out-tweaks - but I don’t know what I’m doing on this pass.
#3.) image-adjustment.glsl – I feel this is important for any preset, but in particular adjustments like film grain will help me alter the Composite preset’s image to create a dirty RF look. (It’s my understanding RF is just Composite that’s been modulated to a frequency)
#3.) interlacing.glsl – My #1 favorite shader (props to hunterk of course <3 ) It gives me the perfect scanline look I want for 240, while giving me interlacing at 480. The best part is it doesn’t interfere with my CRT’s native scanlines at all, so it’s interchangeable across my LED and CRT.
#4.) Border – Ideally I would like to get ‘just’ the corner/border features of CRT-geom without any other of it’s other enhancements. If I can separate these features somehow, I’d love to learn. Or if there’s a shader that does this alone, I’d appreciate a point in the right direction.
#5.) Mask – Specifically, a slot-mask. I was previously using dotmask.glsl However, I couldn’t get it to look quite the way I was expecting, and I’m unclear as to what each mask style is meant to be. Currently I’ve been using crt-easymode as it has a very configurable mask setting. However it has 2 issues I run into. Because I can only offset the mask horizontally, I can’t re-create that staggered slot-mask look. Also, like crt-geom, it’s the only feature from this shader I require - so It’s not ideal.
And… well that’s it. Because it’s on an actual CRT I get all the other features native like a phosphor trail for white-on-black images. I am sure what I’m describing here isn’t perfect, or accurate, etc etc. However, I think these would be the perfect enhancement to my existing CRT.
As I work on this I will be uploading screenshots, both on-screen and off, to show progress. I’ll also continually upload the preset text in-case anyone wants to join in the fun.
Any input, positive or negative, I welcome entirely. This is just as much about learning to work with shaders as it is to create that ideal set I have in mind.