GPU-based shader simulates motion clarity of classic CRT monitors, courtesy of Blur Busters

Alfonso Maruccia

Posts: 1,707   +500
Staff
In context: Modern shaders are sophisticated pieces of code capable of modifying real-time computer graphics with high precision. Some shaders can render realistic game environments using advanced ray tracing lighting effects, while others can significantly enhance simple, minimalistic virtual scenarios.

Best known for their popular UFO Test refresh rate tool, Blur Busters have unveiled a potential game-changer in motion clarity and advanced graphics. Founder Mark Rejhon teamed up with Timothy Lottes, a former AMD and Nvidia engineer, to develop a novel algorithm that simulates the behavior of CRT screens. This breakthrough technology is already being adopted by major emulation projects.

The algorithm is designed to deliver a "major" reduction in motion blur on monitors with higher refresh rates. As Blur Busters explains, anyone familiar with CRTs knows their ability to produce "shockingly clear" moving graphics – a quality the algorithm aims to replicate.

Unlike the traditional Black Frame Insertion (BFI) method used by other CRT shaders, this new approach offers a superior experience with fewer eyestrain issues. It is especially effective for reducing motion blur in "legacy" 60fps, 60Hz content. However, there's a catch: the algorithm requires a monitor with a minimum refresh rate of 120Hz and no local dimming lag.

Blur Busters recommends 240Hz OLED displays for the best results with the algorithm, although it should also work well on 240Hz LCD displays. However, the performance is expected to be "fantastic" on 360Hz to 480Hz OLED screens. The algorithm can reduce motion blur in both real-time and slow-motion scenarios, offering a potential boost for emulators and retro gaming enthusiasts.

The real-time version of the algorithm requires a powerful GPU and may not look optimal on all displays. As Blur Busters notes, "Your display motion blur reduction will be limited by the native:simulated Hz ratio. More Hz the merrier." To demonstrate its effectiveness, Blur Busters posted several demos on ShaderToy, showcasing how the algorithm performs on 120Hz, 240Hz, and 480Hz monitors. The 240Hz demo looks good on my QHD 240Hz monitor, though I'd love to compare it with my old CRT for a true side-by-side test.

CRT simulation has long been a challenge for graphically-intensive emulators of classic consoles and PC systems. With this new open-source shader, the situation is set to improve quickly.

Permalink to story:

 
This is great, but I wish game engine optimisation was more of a thing, games lately are trash in this regard. If the game is a stuttery mess then great motion clarity is a bit pointless.
 
Thank you for giving me (Mark Rejhon) and Timothy Lottes a great shoutout!

One of the many things I am now migrating to is BYOA (Bring Your Own Algorithm) approaches. Given a supply of generic brute Hz, I can emulate any past display.

I've even got an algorithm for a plasma subfield emulator on a future 600Hz+ OLED, and I can do the 1-bit DLP mirror flipping too (need 960Hz or 1440Hz to simulate an old DLP chip). But the CRT tube is the gold standard, so I targetted that first. CRTs still outperform plasma, anyway.

There's already TestUFO demos that emulates (realistic interlacing), and emulates colorwheel (real DLP rainbow effect with eyeroll or handwave), and a few other TestUFO demos that simulates lineitems. But going past 480Hz+, and 1000Hz OLEDs already in the lab, is now providing a geometric explosion of temporal shader possibilities.

This is the dawn of BYOA (Bring Your Own Algorithm), the open source display algorithm age, beginning with my CRT simulator algorithm on December 24, 2024. The "Area 51 Display Science, Research & Engineering" section of Blur Busters have become textbook reading at display manufacturers, despite being an indie hobby-turned-biz.

P.S. I wish more display manufacturers listened to me. And I wish NVIDIA and AMD could help me do a native refresh cycle hook that's independent of content frame rate and targeted simulation refresh rate. If they won't do it, I'll BYOA -- and if display manufacturers wants to reach out to me for a [CRT Simulator: ON/OFF] setting, then they know where to reach me. I don't mind the biz, I don't have enough biz lined up for 2025. Wink wink. 👽
 
Last edited:
Thank you for giving me (Mark Rejhon) and Timothy Lottes a great shoutout!

One of the many things I am now migrating to is BYOA (Bring Your Own Algorithm) approaches. Given a supply of generic brute Hz, I can emulate any past display.

I've even got an algorithm for a plasma subfield emulator on a future 600Hz+ OLED, and I can do the 1-bit DLP mirror flipping too (need 960Hz or 1440Hz to simulate an old DLP chip). But the CRT tube is the gold standard, so I targetted that first. CRTs still outperform plasma, anyway.

There's already TestUFO demos that emulates (realistic interlacing), and emulates colorwheel (real DLP rainbow effect with eyeroll or handwave), and a few other TestUFO demos that simulates lineitems. But going past 480Hz+, and 1000Hz OLEDs already in the lab, is now providing a geometric explosion of temporal shader possibilities.

This is the dawn of BYOA (Bring Your Own Algorithm), the open source display algorithm age, beginning with my CRT simulator algorithm on December 24, 2024. The "Area 51 Display Science, Research & Engineering" section of Blur Busters have become textbook reading at display manufacturers, despite being an indie hobby-turned-biz.

P.S. I wish more display manufacturers listened to me. And I wish NVIDIA and AMD could help me do a native refresh cycle hook that's independent of content frame rate and targeted simulation refresh rate. If they won't do it, I'll BYOA -- and if display manufacturers wants to reach out to me for a [CRT Simulator: ON/OFF] setting, then they know where to reach me. I don't mind the biz, I don't have enough biz lined up for 2025. Wink wink. 👽
I would assume this could be added driver side? Option to toggle on for everything?
 
(I am the author of this shader you wrote about in this article; I posted a big comment but I think it got queued for moderation)

I was trying to say thank you for giving us a callout (and gave some technical details).
Can you explain why do we need special shaders to reduce motion blur in old games if we have an options like in epsxe emulator where you can increase framerate of old games - they don't have to run at their original fps. I used this to make old games feel faster.
 
Can you explain why do we need special shaders to reduce motion blur in old games if we have an options like in epsxe emulator where you can increase framerate of old games - they don't have to run at their original fps. I used this to make old games feel faster.
Users need flexibility of choice; Everyone has their preference.

I do the framegen game too.

I play both blur busting games;

- Framerate-based motion blur reduction
- Flicker-based motion blur reduction (BFI, CRT, strobe)

Have you ever seen the Blur Busters Research Portal (purple button)?

[Forum won't let me post infographic, but google "Lagless 10:1 framegen"]
https:// blurbusters.com/wp-content/uploads/2023/07/LaglessFrameGenerationViaReprojection.png
 
Back