Live data from Hacker News

Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

github.com

41–50 of 93 posts

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#41

Earlier quoted context omitted.

Unbearable high frequency noise does tend to fix itself given a few decades or so.

They were referring the fact that CRTs went the way of the dodo, and flat panels replaced them. This high frequency noise was a unique feature of the CRT.

> until the nineties.

CRTs lasted well into the 2000’s. I think the reference is to the fact that one loses the ability to hear CRT whine as one gets older, since the upper frequency limit of human hearing declines with age.

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#43
post #32

I always hated the weird fuzziness, soft lines, and curved image that old TVs imparted on games, it is amazing to me that entire communities have been built up around it. When I started playing games on an emulator and pixels were hard and square and the image was actually flat, I was like YES!!

It's interesting, because artists on some games accounted for the fuzziness and used it to their advantage. You should play them how you want of course, but for something like Gameboy emulation I absolutely turn on shaders to avoid the nasty black-and-white.

Is a shader really needed just to get the correct color palette? That should be a simple LUT

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#44

I never understood why anyone would want interlaced mode. Can someone enlighten me?

It doubled the amount of lines that could be displayed on screen back in the day. It usually doesn't look that bad if there aren't any thin horizontal lines imo

Yes now that you say it. It was possible to go higher on VGA also and get dithering. And it was also the case for the vieeo out on composite or svideo. The result was barerly readable mud.

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#45
post #5

Earlier quoted context omitted.

Fair point for home games. Arcade games skipped NTSC and just used RGB on separate wires.

A lot of home hardware had RGB as well. The variety of hardware in general was pretty high, to the point that many tricks pixel artists employed only worked on very specific hardware combinations. Case in point: https://www.youtube.com/watch?v=j-G02cjXpZ0 Notice the glass tubes at 0:47+. On the composite output, they look smooth and have that rainbow effect. This only worked on first revisions of the Megadrive; later…

I didn't see your 0:47 reference and almost couldn't tellt he difference but then it was obvious.

Isn't there a similar issue with sonic in front of the waterfall not working correctly on emulators?

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#46
post #8

I'd love to see an option to have the image pincushion and introduces a buzz in the audio from an video signal that was too strong? That was one of my favorite. Everyone focuses on the interlacing, giant pixels shapes, and the fun with chroma bleed, but some of the most bizarre things could happen when you pushed the analog signal too far. The 1 volt peak-to-peak was a rule for a reason, and going past was possible.…

The horrible sound of high frequency CRT screaming meant that I couldn’t go into many electronics areas or stores until the nineties.

I had an Atari ST in the living room and sometimes I would forget to turn the monitor off when I went to bed... but I was always reminded by the high pitch noise I could hear all the way in my bedroom.

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#47

Earlier quoted context omitted.

Also, while the representation of the pixel grid is fairly accurate, it's missing the chromatic aberration from the fact that they were individual electron emitters of red, green, and blue phosphor dots. Pushing the red channel 0.05f and the blue channel -0.05f on the x axis should do the trick.

There's a fun technique in After Effects to separate the image by channels, and then apply an effect turning the image into grids of small circles. Nudge the red a couple of pixels left, the blue a couple of pixels right, and then the green a couple of pixels up. When these are merged back, you get that very look you've described.

Yeah, we can do it in the shader by taking the UV texcoord, sampling the texture rgb, then using a collector, add the r, g, b values to the collector with the offsets in uv's to return the pixel color. It's extremely easy to do in HLSL/GLSL/WGSL/SPIRV/Metal. It can even be controlled using a vector map for the offsets so you can tune it and vignette the chromatic aberration around the edges of the screen. Giving it that truly retro CRT arcade feel. The more the spherical projection, the more aberration.

https://lettier.github.io/3d-game-shaders-for-beginners/chro...

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#48

Earlier quoted context omitted.

They were referring the fact that CRTs went the way of the dodo, and flat panels replaced them. This high frequency noise was a unique feature of the CRT.

> until the nineties. CRTs lasted well into the 2000’s. I think the reference is to the fact that one loses the ability to hear CRT whine as one gets older, since the upper frequency limit of human hearing declines with age.

No, it’s more an illustration that I was forgetting when the transition occurred. In reality it was probably 2002 or 2004 before the pain stopped.

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#49
I love the current infatuation with modeling old CRT display systems. Old graphics and videos from the "time before" rely a bit on how those display systems and signals worked in order to make low-color and resolution artifacts look "better" in terms of smoother color gradients and softer edges and diagonals. The shift to modern displays mades everything form that era look blocky and chunky.

The thing that makes this all really "meta-interesting" is that everybody who remembers that time remembers it differently and so there's no "correct" way to do this. We all had different TVs, monitors, different manufactures from different time periods. Some of us played color 16-bit games on tiny black and white TVs, or remember the flicker of the Atari 2600 on a giant RGB front-projection TV.

As a result we have literally thousands of filters like this that try to reproduce or at least model how these old systems looked to give back some semblance of what we remember, even if it's all entirely wrong.

I found after experimenting with a bunch of this that what seems to be more important than all the phosphor glow, scan lines, and shadow mask stuff, is that the display has to be curved for it to finally click with me. And then having reflections of the screen in the bezel are chef's kiss. It's so subtle, but just those two effects alone seem to do more for me personally than the rest.

The Megabezel project is dedicated to what I'm talking about.

http://www.megabezel.com/

Re: Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal

#50
I'm really excited by the current appreciation of CRTs. There is something so nostalgic about them that matches the warmth of listening to my favorite vinyl. I have had much more fun playing SNES and Genesis via my MiSTer on a PVM than I have had playing most modern games on an OLED display (although OLED is unquestionably beautiful, and I'm looking forward to the OLED Steam Deck).

My biggest concern with my current setup is what will happen when my PVM dies? Will there be anyone around to fix it? Will I trust myself to safely open it up and fix it? The PVM I have isn't _too_ large, but it's certainly more heavy and inconvenient than a modern display. I'm really excited by the excellent work towards recreating how good CRTs look to preserve this bit of history and also provide another artistic option for future games to consider.

Post reply on HN