Cathode-Retro: A collection of shaders to emulate the display of an NTSC signal
github.com
github.com
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.
At first I thought this was a strange thing to ask for, but then I saw the image in the link and suddenly I agree 100%. This is beautiful!
I've played with Retro Emulators that add screen reflections and scratches and bezels that look like the original artwork on the arcade cabinets, and... I love it.
Notice how the physics of CRT ends up rendering the pixel art the way it was meant to appear. Pixel art was not the final image, the one appeared on the CRT was. You can not make up those details without CRT, shaders should get us there though. I wish this github repo had comparison images like that article.
The Atari and that monitor had separate luma & chroma ("S-video") so it was sharper than anything else most people could buy at the time. Most CRT simulators introduce too much degradation by comparison. This one looks pretty good.
I get that it looks cool and makes old games more aesthetically pleasing. But the reality is that we liked these visuals back then because we had much lower standards, not because CRTs had some magical properties that made the games look awesome.
I suspect it's also because the pictures weren't all that sharp to begin with, the brain filled in ('hallucinated') details. Perhaps more so with young observers.
Original : https://ibb.co/VjwKkb8
With CRT shader : https://ibb.co/s6RgswK
Just zoom into the details like the Mario icon, the text, the guardrails, the edges of the polygons …
I know it looks blurry in the screenshot but this is totally unnoticeable once the game is in motion.
More interesting pictures :
https://wackoid.com/wp-content/uploads/2021/08/CRT-vs-LCD.jp...
https://wackoid.com/wp-content/uploads/2021/08/Final-Fantasy...
The point is that those games were made on CRT monitors so the CRT artifacts were in fact heavily used by the artists to render more precise images.
Original post from the two last pictures : https://wackoid.com/game/10-pictures-that-show-why-crt-tvs-a...
I wonder if any of the shaders also has this behavior of randomly shifting the hue or an ability to change it by a give offset.
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 ones had better quality output, mostly losing the effect.
The same applied to displays - crispness, scanlines, bleeding etc were all different.
Isn't there a similar issue with sonic in front of the waterfall not working correctly on emulators?
We could have beautiful Kodachrome quality colors If we used narrow-band RGB filters and a wide gamut (Rec.2020, or Rec.2100PQ) colorspace. If you look at the spectral sensitivity specs of Kodachrome film they are fairly narrow-band and closely matched the perceptual sensitivity of human vision (CIE 1931).
If you display an sRGB encoded image with Rec.2020 gamut (without colorspace conversion) the colors will appear very washed out. If you display a Rec.2020 encoded image on sRGB (without colorspace conversion) it will appear oversaturated. Separately, narrower and/or more widely spaced bandpass filters will increase color saturation. It turns out that narrow-band filters approximating the CIE1931 curves are a natural match for the Rec.2020 colorspace. Since CIE1931 approximates how humans perceive color the colors are also more accurate.
It was a "lucky" accident that the properties of CRT phosphors, from which sRGB is derived were a good match for the wideband color filters used in color video cameras.
https://www.christiedigital.com/about/display-technology/las...
https://www.barco.com/en/inspiration/news-insights/barco-res...
The next filter would be the infamous "broadcast safe" filter that would clamp the video signal to video was not higher than 100ire. Allowing for chroma clamping separate from video clamping would be a bonus. Hell, just give the basic functions of a TBC to the users. They don't need to understand what they are doing to the signal so much as just a few knobs to get creative!
https://lettier.github.io/3d-game-shaders-for-beginners/chro...
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.
Additionally, LCD and OLED have their own subpixel artifacts, so I wonder if that has to/can be compensated for when displaying a CRT emulation.
The screenshots here are second to none for showing why the quest to reproduce CRT rendering is so important for preservation efforts. Without it graphics from this era simply don't look even remotely as intended.
Can you elaborate? I've never heard anything about that, regarding a regular grid of R/G/B stripes.
Or are you talking specifically about the weird PenTile layouts?
Windows ClearType text rendering exploits subpixel artifacts to increase horizontal text resolution.
Any kind of subpixels will result in some sort of artifacts. Tne higher the resolution, the less visible it will be, but it probably requires around 300 DPI to become imperceptible.
Cool Retro Terminal is a nice accessory for when doing recording or screenshots - cause it looks cool. Can't use it as my daily driver tho.
And enough settings in there you can make it look like your favourite old one.
I actually daily drive it, if you set things up just right it is absurdly readable, more so than a regular terminal IMHO.
jupyterlab_miami_nights is real nice, too https://anaconda.org/conda-forge/jupyterlab_miami_nights
DI's Synthwave station somewhat matches the decade: https://www.di.fm/synthwave
Lighter almost solarized red for terminal text is also a decent terminal experience IMHO
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.
I don't think I would have gotten into computers without Linux, the Internet, or the ease of PCIe - however I still appreciate being able to truly understand a computer from top to bottom like you can with old 8-bits. It's also really fun hunting for them online and meeting cool people.
Is it? When I look up "CRT macro lens" on Google Images [1] the shadow mask is extremely pronounced -- possibly even more than here.
I've just tried looking at the screenshots on both a Retina and non-Retina display, and they seem pretty faithful to what I remember growing up. I'm really quite impressed.
Also -- what do you mean by "more vibrant colors"? If you mean (presumably) greater color saturation = wider color gamut, I can't find any source supporting the idea that CRT's had a wider gamut than modern IPS panels -- to the contrary, IPS seems to be at least as good if not better (although early LCD displays weren't). And P3 IPS displays like Apple's certainly blow CRT color gamuts out of the water.
I'm generally impressed by these shaders (they are about the best, I've seen), but I also think that colors are too muted and that the mask is overrepresented.
Edit: Regarding CRT intensities, mind that a CRT set up for daylight viewing would give you headaches when viewed in the dark, which is hard to achieve with a modern display panel.
Are you suggesting CRT's were brighter than modern LCD screens?
That's not the case at all. Average consumer CRT's were 100 nits, the super-bright ones in the 2000's around 200 nits. While your cheapest MacBook is 400 nits, and iPhones have been over 600 for a long time. (Current cheaper laptop brands can be lower around 200 today though.)
I don't mean wider color gamut, I mean that for lower intensities, the saturation can remain high. Most current IPS panels at lower intensities, the color saturation gets washed out (think DLP projector). This correlates with having deep AND distinguishable blacks. IPS has high brightness, VA has higher contrast ratios.
Because of this, I probably won't buy an IPS panel except for 'business' text use.
The LG/Dell Nano IPS Black (aka IPS Black and different than Nano IPS) is reported as being better--I haven't seen it in person so can't comment.
Everybody repeats this, but I've honestly never been convinced.
Different screens and different systems had different types of different degrees of fuzziness. Designing for it seems like it would be impossible.
I've never once seen an example of pixel art that looked good crisp and bad fuzzy, and then was somehow modified in a way to look worse crisp and yet better fuzzy. It doesn't even make sense to me how that could be.
I'm happy to be proven wrong, but I need to see an example with my own eyes. And I've never seen anybody demonstrate it with a 2x2 example like that.
Super Mario on a crisp LCD has always seemed aesthetically better than on a CRT. Not as nostalgic, sure. But nothing feels lost artistically -- to the contrary, it's clearer.
> Once the industry switched from hexadecimal to graphic editors, it wasn’t rare for graphic designers to have not one but two screens on their desk: a computer monitor and a CRT, the second one being used to display the result of the work made on the first one. It’s hard to tell whether this was a standardized practice or not, but we know that many developers, graphic designers as well as programmers, used that technique, from Kazuko Shibuya (Square) and Akira Yasuda (Capcom) to the developers behind Thunder Force IV (1992) who used many CRTs to take into account the specifities of each kind of screen. Masato Nishimura, graphic designer in charge of the backgrounds from Sonic CD, mentioned something he had been told about the first Sonic the Hedgehog (1991): the developers used up to 3 CRTs to previsualize the game and see how were rendered the scrolling and blur effects.
> This practice can be explained by at least 3 reasons. The first one is related to the differences in rendering between a computer screen and a CRT, the pixels look generally sharper on a monitor. The second one lies in the specificities of each machine: display resolution, shape of the pixels (rarely as square as one would expect), rendering of the colors -the red color bleeded on the others on Mega Drive, it was recommanded to add neutral colors around to compensate. The third reason is related to the second one but also concerns programmers: a workstation doesn’t necessary simulate every aspect of the machine for which a game is being developed. For example, the parallax scrolling effect featured in the Mega Drive game Thunder Force IV couldn’t be tested on X68000.
> Tatsuro Iwamoto, graphic designer on the first episodes of the Phoenix Wright / Gyakuten Saiban series released on Game Boy Advance, explained that he took account of that (sometimes unwanted) effect on Nintendo’s portable console.
> Some graphic designers toyed with these specificities and mastered the 0.5 dot technique... “It’s a technique where by slightly changing the color of surrounding pixels, to the human eye it looks like the pixels move by around 0.5 pixels.” explains Kazuhiro Tanaka, graphic designer on Metal Slug (1996). His colleague Yasuyuki Oda adds that “Back in the old days, we’d say [to our artists] "add 0.5 of a pixel”, and have them draw in the pixels by taking scanlines into account. But with the modern Full HD monitor, the pixels comes out too clearly and too perfectly that you can’t have that same taste.“
That's a clear example, then, of something that looks worse in full-res. I hadn't been able to find an example like that before.
Thanks again -- this finally explains something I really didn't understand for the longest time.
https://www.pcmag.com/encyclopedia/term/flat-crt
They also look amazing but I recommend paying someone else to move them. Especially up stairs.
I wonder if these are more efficient in sone way? Or accurate?
Also FYI: your link features a lot of shaders using the megabezel presets, which are extremely unoptimized. The koko-aio bezels in the same slang-shaders repository can do the same effects, but with much better performance.
It usually doesn't look that bad if there aren't any thin horizontal lines imo
Aside from thqt, maybe artistic looks for new video...
Seriously, my wife is into Mid-Century Modern - a wood console CRT emulator would be awesome. I may need to set up a machine to connect to the TV. But I’d like to watch streamed shows on it.
[0] https://www.youtube.com/watch?v=hNRO7lno_DM
[1] https://trixter.oldskool.org/2015/04/07/8088-mph-we-break-al...
[2] https://int10h.org/blog/2015/04/cga-in-1024-colors-new-mode-...