Haste wrote: ↑12 Jul 2021, 17:12
Would it be possible to have an option to simulate stroboscopic stepping?
MCLV wrote: ↑13 Jul 2021, 16:18
There is a lot of things that can be done but many of them are much simpler to do by changing the code directly rather than by creating a GUI which gives this flexibility to the user. So I encourage you to look at the code and play with it.
Discorz wrote: ↑14 Jul 2021, 06:11
Unfortunately I never dived into coding world. It looks like hieroglyphics science to me.
Now I only hope Chief finally does something similar as he always wanted. This is a solid base to add to
I'd like to add other stuff like:
- A PWM emulator (to simulate PWM dimming)
- A phosphor decay emulator (to simulate KSF/CRT)
- A temporal dithering emulator (to simulate plasma/DLP)
- A temporal color emulator (to simulate DLP color wheel)
These are actually very simple shader math functions, so rewriting/porting Blurinator 9000 to use shader math may actually allow it to emulate more displays.
In theory, it could also do the simulation in real time (generate 240 blurinatored frames at 240 frames per second), and become the algorithm for a CRT electron-beam emulator (e.g.
RetroArch BFIv3)
In fact, I may be happy to create a 4-figure or
maybe 5-figure (USD) bounty for this, or hire someone part-time to create this codebase (stipulation: commercialzation-friendly open source licenses such as Apache or MIT), to create something that can later be added to RTSS or Special K or a windows indirect display driver. (Emulate 60Hz Windows CRT rolling-scan on a 360Hz monitor!). Apache or MIT, take your pick.
Since I have long tended to be the Robin Hood of low-cost high Hz, I'm generally a big fan of opensourcing this kind of stuff, even if I hire someone to expand this to a C/C++ codebase that can easily be ported into other projects. Too many people tend to be greedy on this stuff, and I have abandoned an earlier BFI-driver project because someone else was greedy and crossed certain uncrossable red lines. So I need someone else to create a clean-room implementation, completely from scratch, and completely open source. Fortunately I probably don't need to post a bounty soon, since multiple people has already started on different parts of such a project.
For example, Special K now has software-based BFI built in, and I know others are working on multiple Windows indirect drivers. But I'd love to have a high speed real-time Blurinator (capable of Blurinatoring 240 framebuffers of 1/240sec simulated exposures per second for realtime display on a 240Hz monitor in a Windows indirect display driver), especially a Blurinator enhanced to add other sub-refresh temporals than LCD GtG. Such a realtime Blurinator would correctly simulate LCD GtG of a slower LCD on a faster-LCD-GtG display, as an example. Now imagine enhanced so you could simulate a CRT tube, plasma display or DLP projector on a future 1000Hz LCD!
This would have many spinoff applications:
- Simulated pursuit camera images of ANY display (LCD, CRT, OLED, plasma, DLP, etc) simply by plugging the appropriate GPU shader
- Easier to simulate displays before building them (to discover if there's any unexpected artifacts)
- Easier to realtime simulate displays on non-retro displays (e.g. simulate a CRT on a high-Hz LCD)
A universal display emulator library (in a highly portable language) would be able to do all the above! Whether for offline analysis, slow-motion analysis, or real-time display.
GPUs are so hyper-fast today, that an RTX 3080 can be made to simulated real-time temporal dithering for a 4K DLP with 1920 1-bit refresh cycles per second (with some algorithmic optimizations). This was formerly the territory of FPGAs but shadertoy tests shows we now have enough computing power to emulate all retro displays in realtime now! So that means if we had a 1920Hz display, it'd be accurately simulating the artifacts of that DLP projector, for example (including contouring, pixel noise, and rainbows). And a VGA CRT tube can be fairly accurately (to human vision error margins) temporally simulated on a 1000Hz+ LCD. Etc.
That said, until someone goes far enough along, I'm willing to incentivize speeding up such a project. Developers, inquire within, PM *and* email mark [at] blurbusters.com with something that authenticates your identity (e.g. same email that you use for LinkedIn) and your experience.
Ideally I could do this myself, but there are so many Blur Busters projects that Chief Blur Busters can concurrently focus on.