Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved subpixel text rendering for OLED (WRGB stripe, RGB triangular) -- Unfixable by ClearType Tuner (Over 100 upvotes in Feedback Hub) #25595

Open
mdrejhon opened this issue Apr 18, 2023 · 204 comments
Labels
Idea-New PowerToy Suggestion for a PowerToy

Comments

@mdrejhon
Copy link

mdrejhon commented Apr 18, 2023

Description of the new feature / enhancement

EDIT: January 24th, 2025:

NOTE: I do paid work with display manufacturers.

Repost of incorrectly-closed github item that someone else posted:

ClearType alters anti-aliasing assuming an RGB stripe subpixel configuration. More WOLED (WRGB stripe) and QD-OLED (RGB triangular) monitors are coming to market and have noticeable chromatic aberration/color fringing on edges of text. It would be nice if Windows had a built-in option to alter text rendering based on subpixel configuration of the monitor.

Scenario when this would be used?

When using a WOLED or QD-OLED monitor with WRGB stripe or RGB triangular subpixel configuration to improve text clarity.

Supporting information

https://www.youtube.com/watch?v=52eiLP3Zy-s

https://youtu.be/k-6yc1dA--0?t=602

https://youtu.be/PR-1tMih0fM?t=442

It is definitely a real problem caused by unresolvable ClearType limitations. The earlier github item (#25568) was incorrectly closed by someone who thought it was a feature already built into windows; so creating new GitHub issue.


EDIT January 24th, 2025

@mdrejhon mdrejhon added the Needs-Triage For issues raised to be triaged and prioritized by internal Microsoft teams label Apr 18, 2023
@mdrejhon
Copy link
Author

mdrejhon commented Apr 18, 2023

As founder of Blur Busters / TestUFO, I work with computer monitor manufacturers; so I will explain

GOOD: What ClearType Is Compatible With:

ClearType is only compatible with vertical-stripe RGB and BGR pixel structure.

RGB: image

...and...

BGR: image

BAD: What ClearType definitely NOT Compatible With:

No, ClearType tuner doesn't fix this properly. It is unable to 100% unable to fix this.

LG WOLED, all televisions and monitors

image

It is not possible to control the white sub pixel in software, but ClearType can still at least go into a special "RBG" mode where the blue subpixel is in the middle, and the green subpixel is at the right edge. I did some PhotoShop tests and it actually makes text better on an LG WOLED. It looks much better, here are some example PhotoShop images that works fine on an OLED at 1:1 pixel mapping:

One possible solution: Use an RBG ClearType mode where B is middle subpixel

I photoshopped this special sample that looks absolutely fantastic on LG WOLEDs.

image
(...Note: I know contrast is a bit extreme so there's a bit of excess sharpening-effect; it should be adjustable...)

So, dear Microsoft, here's definitive proof that ClearType modifications are required to look better than anything that ClearType Tuner can do. Winky-wink. 😉 😉 😉

Samsung QD-OLED, all televisions and monitors

They use a triangular structure as follows:

image

Actual macro photograph of a Samsung QD-OLED:

image

Which produces a text fringing problem at top/bottom of texts:

image

ClearType Tuner is 100% completely unable to remove this fringing. Even alternative utilities such as Better ClearType Tuner can't fix this artifact.

  • Greyscale mode still has green/purple fringing (at all adjustment settings)
  • RGB mode still has green/purple fringing (at all adjustment settings)
  • BGR mode still has green/purple fringing (at all adjustment settings)

This is because the green sub pixel is at the top edge, and red/blue subpixel is at bottom edge. ClearType is unaware of this subpixel layout.

Monitor reviewers such as RTINGS complain about this.

https://www.rtings.com/tv/reviews/samsung/s95b-oled#test_178:~:text=LEARN%20ABOUT%20REFLECTIONS-,Pixels,-Subpixel%20Layout

The Samsung S95B uses a unique subpixel structure. Instead of having all three subpixels in a row, each pixel forms a triangle, with the larger green subpixel at the top. This isn't really noticeable with most video content, but it's an issue if you're using the TV as a PC monitor. Text has just okay clarity from a PC, as WINDOWS CLEARTYPE SETTINGS AREN'T DESIGNED FOR THIS subpixel structure, and CAN'T CORRECT FOR IT. You can see a few examples below:

@mdrejhon
Copy link
Author

mdrejhon commented Apr 18, 2023

Possible Method of Implementations

Short term implementation

A future "Enhanced ClearType Tuner" utility would accept a bitmask PNG file (square shaped) that shows where the red, green, blue subpixels are within one single pixel (ignoring any white subpixels, if any)

An enhanced ClearType would automatically use this than the old-assumption of RGB stripe. This proposed bitmask file (to define structure of one pixel) can be small, e.g. 32x32 or 64x64, and only be Red, Green and Blue pixels with the rest of pixels black or transparent.

Long term implementation: Plug-and-Play!

Since monitor manufacturers are continually coming out with custom subpixel structures, monitor drivers (.INF) can provide an optional pixel structure (possibly as a bitmask, or a base64 data: PNG bitmask, 32x32 or 64x64), or even multiple string rows such as "0111022203330" per pixel row (where 1=red, 2=green, 3=blue) for human readability.

The ClearType renderer would automatically use this known subpixel structure to provide accurate subpixel rendering. Monitor manufacturers can provide custom monitor-specific INF files that automatically inform Windows of the special subpixel structure.

Precedent

Many smartphones already supports custom subpixel renderers (e.g. Pentile), though proprietary to the specific-display Android manufacturer (e.g. not visible in AOSP source code that is coded to a generic display).

Known Issue

Sometime not too long ago, Microsoft made a mistake of simplifying ClearType rendering to only use one format for all multimonitors. This created problems for people using mixed RGB and BGR setups, which wasn't a problem during Windows XP days but is now a problem today with Windows 11.

Instead of per-monitor ClearType tunings, Microsoft made the ClearType tuning global -- facepalm for many use cases. The LCD RGB-stripe hegemony is diminished because of the giant boom of mixed-monitor use cases, and new OLED computer monitors.

So the originally well-intentioned simplification shot itself in its feet;

Display rotation of tablet PCs also affects ClearType; Microsoft had to make adjustments to ClearType to keep it looking correct at all screen rotations. It is possible the affects-all-monitors simplification occured around this time (approximately Windows 8, not sure), when the ClearType engine was possibly refactored by Microsoft.

Thus, Microsoft needs to undo this feature regression (now becoming increasingly visible in a multimonitor era), which was only because of the hegemony of RGB-stripe LCDs.

One massively common use case is some people connect an RGB laptop to a BGR television set (more than half of TVs made today are BGR!). This accidental Microsoft regression made many years ago, needs to be undone.

TL;DR Summary of feature regression

BEFORE: In some past versions of Windows, you could configure multimonitor -- e.g. RGB on laptop/monitor and BGR on TV.
AFTER: Right now you can't. It's either RGB or BGR globally for all displays in your multimonitor.

This Could Be Marketed As "ClearType 2"

  • Supports custom subpixel structures (new)
  • Supports per-monitor subpixel structures (reintroduced)

@Jason-GitH
Copy link

Thanks for bringing more attention to this issue. I originally linked the wrong LTT YouTube review. Here is the correct link where he discusses insufficiencies of ClearType with OLED:

https://youtu.be/PR-1tMih0fM?t=442

@mdrejhon
Copy link
Author

mdrejhon commented Apr 18, 2023

Thanks for bringing more attention to this issue.

You're welcome!

As I currently am on paid contract work with LG Korea regarding their brand new 240Hz WOLED panels that are supplied to multiple manufacturers (ASUS, Corsair, etc), I can assure you that several end-users are now complaining about this.

Please feel free to share the permalink to other experienced/advanced/programmer computer users who just purchased the new 2023-model OLED computer monitors, to bring more attention to this item.

Permalink: https://github.com/microsoft/PowerToys/issues/25595

@mdrejhon
Copy link
Author

mdrejhon commented Apr 18, 2023

To Microsoft Employees:

Perhaps forward the permalink to the ClearType renderer contacts for further thought?

@Jay-o-Way
Copy link
Collaborator

@crutkas this guy should be working for Microsoft

@Jay-o-Way
Copy link
Collaborator

I do think this is an issue between hardware and OS developers, though. Have you contacted Microsoft in a more direct manner?

@mdrejhon
Copy link
Author

mdrejhon commented Apr 18, 2023

Yes, thought about forwarding @Jason-GitH suggestion too.

But this is a known difficult communicate (even via business channels, easily-dismissable, the original github was closed) with an unclear incubate venue. I think you understand that I am desparate enough to have to go through this channel, now, too.

ClearType was developed in 1998 as an application-based feature (Microsoft Reader) and then ported into the OS. It's been a very stagnant feature that doesn't even have an assigned maintainer at Microsoft anymore, I think. However, it went into a Microsoft Research paper (I think) and perhaps the original researchers are still at Microsoft 25 years later.

ClearType can be done without the initial involvement of hardware developers, as it can be done application based and as demonstration PhotoShop images. So, it may be easier to incubate application-side first. After all, the 1998 version of ClearType was just a book/text/doc reader application...

The use of OLEDs in computer monitor has woken up this otherwise old mature feature.

Later this year, I may publish an article/whitepaper (better rewrite-copy of this image-illustrated GitHub item) at Blur Busters later and post a link on the Feedback Hub. Links are also unclickable in it too. If only Feedback Hub was also github that I can post illustrated embeds in (not file attachments), y'know?

Still, it seems technically possible to incubate this first as a third party application (aka PowerToy) -- there are third party font renderer utilities, such as MacType for Windows - www.mactype.net

Plus, the ClearType Tuner app was also originally a PowerToy too.

So, still relevant here. 😄

@mdrejhon
Copy link
Author

mdrejhon commented Apr 18, 2023

Starter Generic Subpixel-Aware Supersampling Algorithm

For every time one font glyph is rendered onscreen:

  1. Check if the glyph is already in the subpixel-scaled glyph cache (for a specific glyph at a size with all combining marks etc)
    If yes, skip to step 5.
  2. Render a single character (font glyph) in-memory at high scaling factor (e.g. 16x size).
    Example: If it's a 16point character of Arial, draw it at 256point size within GPU memory
  3. Downscale the supersized font letter through the subpixel-structure bitmask
    Example: Use a GPU shader to push the large font letter through the subpixel-structure bitmask during downsample
  4. Cache the resulting downsampled bitmap (for faster run at step 1)
  5. Draw the glyph onto the screen
    The bitmaps should be transparent with an alpha channel, to be compatible with overwritten text / overlay on complex background / linked letters like Arabic / etc).

Basically, pushing a supersized version of the glyph through the subpixel mask during downsample. This is very simple ultra-fast GPU shader code.

Or you could use layering of existing DirectWrite/Direct2D APIs instead (e.g. bitmap scaling and bitmap-combining mathematics similar to ADD, SUBTRACT, AND, OR, XOR, alpha-blend operations etc) instead of GPU shader code. (And many of these APIs compile as shaders anyway when GPU acceleration is enabled). Various settings can be done to adjust.

ClearType Contrast can be simply an alphablend/math between a non-subpixel-compensated glyph and a subpixel-compensated glyph. And configurable supersample size (6x, 8x, 10x, 12x, 14x, 16x, [...]) for quality experiments.

One consideration; there will be loss of OpenType/TrueType "hinting" for small-size fonts (due the large-glyph rendering step) but the resulting correct subpixel render (up to ~3x more resolution possible) without hinting, will look superior to hinted-but-incorrect/blurrier. In other words, the nonstandard-subpixel-structure sharpness improvement outweighs the loss of "hinting" support for the vast majority of fonts -- even for complex fonts such as Mandarin, etc, that goes very soft/blurry on WOLEDs.

Either way, while it sounds difficult at first -- the generic algorithm is actually absurdly simple to a shader programmer or bitmap-mathematics programmer, once they're trained to understand ClearType better (e.g. treat the subpixels like additional pixels spatially)

There can be optimizations later to speed things up, and hinting support re-added later. But the algorithm is very simple.

Technically, first step could be done as an open source Reader application, even a rudimentary TXT viewer (font and size configurable in menus). Not too different from a simplified version of 1998's Microsoft Reader.

So the first step is a simple font renderer library for applications, using this algorithm, maybe? Though I have no time to start the project, I can code-review it, and I can tweak the code's algorithm to the correctness needed, or add other features (like adjustable alphablend between subpixel-scaled vs nonsubpixel-scaled, as a Contrast setting).

Possible Path of Introduction?

There might be many other workflows to incubate this at the open source level. But I'd propose to break it down to simple steps. Slowly introducing "ClearType 2":

  1. Awareness-raising as font-renderer library for applications (incubate as separate github project) like 1998's Microsoft Reader
  2. Then as OS-wide PowerToy (this github item) uses that library;
  3. Then native OS feature (become part of ClearType)

This may not be the best path, but gives the gist of steps-breakdown for a simpler path of introduction of "ClearType 2".

EDIT APRIL 2022

There's precedent and existing open source code of a font subpixel renderer: FreeType documentation is rather interesting about a possible subpixel-structure-flexible algorithm:
https://freetype.org/freetype2/docs/reference/ft2-lcd_rendering.html

@mdrejhon
Copy link
Author

mdrejhon commented Apr 20, 2023

Related discussion, since the proposed ClearType 2 PowerToy would need to fix this;

More Information About ClearType Tuning Problem with Multimonitor

Some people argue it isn't a feature regression, but a do-nothing bug, or some intentional change -- but I wanted to add some context of the ClearType multimonitor issue (global vs per-monitor):

Research (by the author of Better ClearType Tuner) about this multimonitor pboelm:
https://github.com/bp2008/BetterClearTypeTuner/wiki/ClearType-Investigations

Also, tons of reddit complaints, especially when multimonitoring with televisions (which uses BGR)
https://www.google.com/search?q=ClearType+Tuner+multimonitor

It's one of those hard-communicate bugs that will probably easily get overlooked in Feedback Hub;


I reference bp2008/BetterClearTypeTuner#11 -- the person @bp2008 who wrote "Better ClearType Tuner" -- because he had to close the multimonitor-ability because of the Microsoft bug/regression involving multimonitor ClearType.

I'm pulling him in to see if he's got any interest commenting about the bug/regression here.

Let me see if there's a Feedback Hub for this Microsoft ClearType bug/regression, if not, I will create one within the month. It's obscure-but-frustrating. But I will publicly mirror here for relevancy (until Feedback Hub is replaced with a public-facing GitHub Issues system)

@mdrejhon
Copy link
Author

mdrejhon commented Apr 20, 2023

Over 100 Upvotes in Feedback Hub for "ClearType 2"

Okay, I have audited Feedback Hub, and whoo-boy, this is a popular complaint by OLED owners.

This issue is so obscure (that the duplicate-item judges do not even understand these are duplicates). I will flag by copy and pasting some of this comment in Feedback Hub.

Search Terms: "cleartype OLED", "cleartype WOLED", "cleartype QDOLED"

Duplicate Feedback Hub List

Related ClearType Bug Reports For Gaming/Multimonitor

  • https://aka.ms/AAkjw7z -- "ClearType setting for different subpixel layouts for different screens (for second monitor rotated to portrait/vertical position)" (6 upvote)
  • https://aka.ms/AAkcebe -- "ClearType text tuner incorrectly warns about non-native resolution"
  • https://aka.ms/AAb5v10 -- "Blurry text on my portait orientation monitor after updating to build 21313" (8 upvotes)

Let's consider many users don't understand how to bug report this

Especially considering many experienced programmers don't even understand the algorithm behind ClearType (including, possibly, also the person that closed the original PowerToy item).

End users just see text being much blurrier than OLED, compared to Apple's subpixel optimizations for their OLED iPhone and iPad, and wonder why Microsoft Windows is very bad;

Adebisi T (Microsoft Engineer) seems currently confused by this report in one of the items, maybe forward this GitHub permalink (Can anyone tag his github username?)

Since github allows me to quickly type at 140wpm with easy photo-pasting (screenshots, etc), I shall continue to use this GitHub as the control-room item to communicate ClearType problems to Microsoft. As a line-item exception, Feedback Hub which is nigh impossible to correctly communicate the fairly complicated ClearType multimonitor bug/regression, combined with feature request for QD-OLED compatible ClearType.

@mdrejhon mdrejhon changed the title Improved subpixel text rendering for OLED (WRGB stripe, RGB triangular) -- Unfixable by ClearType Tuner Improved subpixel text rendering for OLED (WRGB stripe, RGB triangular) -- Unfixable by ClearType Tuner (Over 100 upvotes in Feedback Hub) Apr 20, 2023
@mdrejhon
Copy link
Author

mdrejhon commented Apr 20, 2023

It looks like MacType might be able to work on this: snowie2000/mactype#720

We'll push that front, too.

@Jason-GitH
Copy link

Jason-GitH commented Apr 20, 2023

It looks like MacType might be able to work on this: snowie2000/mactype#720

We'll push that front, too.

That's good to know. Their findings will be useful. I wish MacType had broader applicability but its effects don't get applied throughout several areas of Windows UI, UWP apps, and Chromium.

@mdrejhon
Copy link
Author

mdrejhon commented Apr 21, 2023

That's good to know. Their findings will be useful. I wosh MacType had broader applicability but its effects don't get applied throughout several areas of Windows UI, UWP apps, and Chromium.

Agreed.

That being said, it is a bonafide third party font renderer that already has built-in optional RGB subpixel support.

So it is a potentially useful incubation venue before something similar comes Microsoft-side. While MacType is usually used without subpixel rendering, it does have subpixel rendering available (for RGB LCDs at least).

So, MacType is proof that a third party subpixel-capable font render already exist, and therefore "ClearType 2" could be incubated via the PowerToy venue;

Be noted, MacType is GPL, and generally Microsoft prefers to use MIT/Apache code for open source ClearType applications. However, I have publicly posted the generic subpixel rendering knowledge, which can be written independently by them and by Microsoft.

@mdrejhon
Copy link
Author

mdrejhon commented Apr 21, 2023

Donation OLED Offer to Software Developer With Font Cred

Also, since I am the owner of Blur Busters -- I might be able to donate a spare OLED monitor (1440p 240Hz!) later this year to an experienced subpixel-font programmer (e.g. MacType programmer or ClearType programmer) if they want to take upon the ClearType 2 task. I will (by summer) have way too many 240Hz OLEDs cluttering up my Canadian office, and this is a very noble initiative. The value of the monitor is over $1000.

Many Announcements For Desktop OLED in Year 2023 ALONE

Let's remember the Feedback Hub complaints was almost singlehandedly the Dell Alienware AW3423DWF that shipped last year in 2022. Get your horses ready; are you sitting down? Here's the 2023 tsunami flood:

It is highly probable that the number of computer users using OLED is projected to go up an order of magnitude very rapidly from nearly-nil in 2022, by the end of 2023, all singlehandedly due to the large number of OLED product hitting the market this year.

@mdrejhon
Copy link
Author

mdrejhon commented Apr 21, 2023

It looks like MacType might be able to work on this: snowie2000/mactype#720
We'll push that front, too.

Based on comments at my new MacType feature request: snowie2000/mactype#932 --
I think the primary MacType author didn't seem understand (initially) nor seemed interested. However, the feature request is there, just in case in case other maintainers/volunteers takes the torch and prefers that incubation route.

So that gives an open source text-renderer programmer multiple choices of incubation venues.

  • As ClearType 2 PowerToy (this item) in honor to ClearType Tuner PowerToy ancestry; or
  • As third party font renderer (MacType-for-Windows via mactype#932); or
  • As third party renderer library for application-level use;

As ClearType was originally incubated as an application (Reader) and a PowerToy (Tuner) before it becomes an OS feature; there is a clear need to communicate clearly in all possible incubation venues, until someone comes along who concurrently understands the problem, knows hows to code the solution, and has time to do so.

@mdrejhon
Copy link
Author

mdrejhon commented Apr 22, 2023

QD-OLED Tester Wanted

Possible MacType Incubation Under Way

OK, I think MacType might have just incubated it -- it apparently had vestigal support for subpixel vertical positions, so some creative configuration file editing made it compatible with triangular-structure OLEDs! Need some guinea pigs for these PNG images designed for triangular-pixel-structure QD-OLED.

For users of QD-OLED displays

image

Test image for triangular-subpixel QD-OLED displays

image

Which one has the least green/blue fringing artifact?

Please specify if 1, 2, 1b, 2b, 1c, 2c, 1d, 2d looks the best on your QD-OLED display.

The test image here, and information here, will also help Microsoft evaluate improvements to ClearType (possible concurrent incubation), perhaps as a possible "ClearType 2 Tuner PowerToy"

@Jason-GitH
Copy link

Jason-GitH commented Apr 22, 2023

I have played around with MacType quite a bit on WOLED. The built-in CRT profile as well as DeepGrayNoHinting / SoftGrayNoHinting did the best at eliminating fringing in Windows UI but don't improve sharpness noticeably.

@vaisest
Copy link

vaisest commented Apr 22, 2023

I have played around with MacType quite a bit on WOLED. The built-in CRT profile as well as DeepGrayNoHinting / SoftGrayNoHinting did the best at eliminating fringing in Windows UI but don't improve sharpness noticeably.

However these seem to do grayscale rendering, which would avoid dealing with this topic completely.

@Jason-GitH
Copy link

Jason-GitH commented Apr 22, 2023

I have played around with MacType quite a bit on WOLED. The built-in CRT profile as well as DeepGrayNoHinting / SoftGrayNoHinting did the best at eliminating fringing in Windows UI but don't improve sharpness noticeably.

However these seem to do grayscale rendering, which would avoid dealing with this topic completely.

Yep. Disabling ClearType, setting Better ClearType Tuner to grayscale aliasing, or using one of those aforementioned MacType profiles accomplish reducing color fringing in most areas on WOLED. There are still some areas of Windows UI that remain affected, though. And sharpness is not as good as I think it could be.

@mdrejhon
Copy link
Author

mdrejhon commented Apr 22, 2023

I have played around with MacType quite a bit on WOLED. The built-in CRT profile as well as DeepGrayNoHinting / SoftGrayNoHinting did the best at eliminating fringing in Windows UI but don't improve sharpness noticeably.

However these seem to do grayscale rendering, which would avoid dealing with this topic completely.

Correct. Thumbs-upped you. However...

LG OLED demo image has extremely sharp text

With the LG OLED demonstration image having nearly twice as sharp text than any of the other options ...

(viewing the LG OLED images on anything else other than LG OLED, will not work -- it is as sharp as well-optimized LCD ClearType).

There are ClearType fans that would like the sharpest possible text.

Everybody sees differently.

  • Different degrees of eyevision acuity and eyeglasses prescriptions.
  • Different degrees of colorblindness (12% of population is colorblind).
  • Different people are bothered by different things more than others.
  • Some of us don't notice the color fringing as blatantly as the text-fuzziness
  • Others like the zero-subpixel MacType look better.
  • My policy is not to visionsplain anyone for them, and let people choose their preference.

It is a matter of personal preference

There should be an adjustable Contrast/Saturation setting, so that fringing can be easily adjusted, while keeping text sharp. This is easy to do with ClearType Tuner, but very hard to do with MacType.

@bizude
Copy link

bizude commented Apr 22, 2023

Thank you for bringing attention to this issue.

@mdrejhon
Copy link
Author

mdrejhon commented Apr 22, 2023

profiles accomplish reducing color fringing in most areas on WOLED. There are still some areas of Windows UI that remain affected, though. And sharpness is not as good as I think it could be.

WOLED is more immune to fringing than Samsung QD-OLED. It's easier to fix fringing on WOLED than QD-OLED, and color fringing on QD-OLED is completely unfixable without some subpixel rendering adjustments.

I just got some reports from [H]ardForum that people like the QD-OLED image:

  • "The 2's have far less or no fringing to my eyes. 2,2b, or 2d are the best. I can't notice much difference between them. Everything on the left has obvious fringing."
  • "On the [Alienware] DWF, 2 is the best with 2b as close second. Clear fringing on all the 1's.*

EDIT: Comments from #25595

  • "I'm on an AW3423DW. All of the 2's don't have much fringing to me or others I've had try. 2 looks the best to me, while 2b and 2c looked the best to two other people."

For the LG OLED image, I have gotten some rave reviews already, but I need to convert it to a proper MacType config file.

@danweast
Copy link

Which one has the least green/blue fringing artifact?
Please specify if 1, 2, 1b, 2b, 1c, 2c, 1d, 2d looks the best on your QD-OLED display.

I'm on an AW3423DW. All of the 2's don't have much fringing to me or others I've had try. 2 looks the best to me, while 2b and 2c looked the best to two other people.

@kramarz89
Copy link

@mdrejhon is it possible to upload the QD_OLED-2 profiles for mactype? I really like how the 2 looks like, and wanted to see if it suits me

@mdrejhon
Copy link
Author

mdrejhon commented Sep 19, 2024

One person in one of the >130+ comments linked to a different place where you can edit the MacType config to include the QD-OLED config.

@hsjoberg
Copy link

hsjoberg commented Sep 29, 2024

Rather than trying to fix ClearType and Windows internals in order for it to support arbitrary subpixel layouts, wouldn't the best way forward be to just scrap ClearType altogether and improve grayscale anti-aliasing?

As macOS and Macs have shown, display monitors today have such high resolutions anyway that it doesn't make sense to hack subpixels anymore.

@Andarwinux
Copy link

Unfortunately, while it's true that high-resolution displays are more common these days, in the world outside of Apple, display PPI still aren't high enough to ditch subpixels altogether, especially when mainstream 4K OLED is generally over 27 inches and no higher resolution is available.

@Void48
Copy link

Void48 commented Oct 12, 2024

Hey everyone. I recently got the LG OLED 27GS95QE monitor and I'm curious about the best solution to eliminate color fringing. I've tried ExplorerBlurMica version 1.0.7, but it only works for explorer.exe and not for other programs.

@mdrejhon, you mentioned that WOLED color fringing is easier to fix than QD-OLED. With that in mind, do you think a third party program could be developed to address this issue? Have you considered commissioning someone to create such a program? Maybe a bounty could be offered, as it would probably take a significant sum to incentivize a developer to take on the project.

@Void48
Copy link

Void48 commented Oct 12, 2024

Update: Messed around with Windows scaling and set it to 125%, and I'm now using the "--disable-lcd-text" launch argument for both Chrome and Discord (​recommend using Vesktop, so the launch argument can be used more easily​​).
There's no fringing, and the text looks quite clear to me. However, a disclaimer: I've read online that this may not look as good or be as effective for QD-OLED as it is for WOLED. For other programs, I'm using MacType with the DeepGrayNoHinting profile, and it's honestly fine. There's also no fringing, so I recommend these settings to LG WOLED owners who are unhappy with the font rendering.

2nd Update: I found a Chromium-based browser that supports MacType by disabling DirectWrite. Use this at your own risk, as it appears to be closed-source. Here's the download link: https://winstall.app/apps/Catsxp.Catsxp, along with instructions to disable DirectWrite:

Create a new text document named StartupParm.txt in this location:
C:\Users\YourUsername\AppData\Local\CatsxpSoftware\Catsxp-Browser\Application

Open the file in Notepad and add this startup parameter:
--disable-direct-write

Save the file and enjoy MacType working in your browser. :accessibility:
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯
*Possible improvements to text clarity also include: DLDSR/DSR.
*Firefox users can use https://github.com/mhtvsSFrpHdE/Grayfox since "--disable-lcd-text" isn't available.

@pbaykalov
Copy link

And by the way, it's easy to check for any color fringing around text using the Magnifier system app.

Please tell me you are joking.

@Void48
Copy link

Void48 commented Oct 13, 2024

@lukefor, I appreciate your pointless reaction, even though it contributes nothing to the discussion. 👍🏻

@anouve
Copy link

anouve commented Oct 13, 2024

And by the way, it's easy to check for any color fringing around text using the Magnifier system app.

Please tell me you are joking.

No? You can clearly see color fringing around the text using the Magnifier system app. Not everyone has a macro camera, so I'm not sure what your alternative proposal is.

@Void48 The magnifier app will not show you the fringing that is being caused by the sub-pixel layout of your monitor. What you may be seeing with magnifier are the special coloured pixels being used to perform the text anti-aliasing.

The same thing happens with the magnifier app on any display (if ClearType is enabled) — Even those that use the traditional RGB sub-pixel structure.

@Void48
Copy link

Void48 commented Oct 13, 2024

And by the way, it's easy to check for any color fringing around text using the Magnifier system app.

Please tell me you are joking.

No? You can clearly see color fringing around the text using the Magnifier system app. Not everyone has a macro camera, so I'm not sure what your alternative proposal is.

@Void48 The magnifier app will not show you the fringing that is being caused by the sub-pixel layout of your monitor. What you may be seeing with magnifier are the special coloured pixels being used to correct text anti-aliasing.

The same thing happens with the magnifier app on any display (if ClearType is enabled) — Even those that use the traditional RGB sub-pixel structure.

Thanks for informing me! I removed the misinformative comment. 👍🏻

@yarden32
Copy link

yarden32 commented Dec 18, 2024

a year and a half later, oleds becoming a bit more affordable but i still can't bring myself to buy an oled because of text fringing. i play a lot of games but i also work from home. i'm getting the feeling we'll see windows 12 coming up along with a "cleartype 2.0"

@mdrejhon
Copy link
Author

mdrejhon commented Dec 18, 2024

a year and a half later, oleds becoming a bit more affordable but i still can't bring myself to buy an oled because of text fringing. i play a lot of games but i also works from home. i'm getting the feeling we'll see windows 12 coming up along with a "cleartype 2.0"

The upcoming stripe-RGB LG WOLEDs may be of interest to you. These are the upcoming "office" OLEDs, so it's compatible with ClearType. Early tests show that those models look fantastic with ClearType.

Also, some of the upcoming panels use RWGB instead of RWBG. So while this won't be universal to all OLEDs, there will be certain models of OLEDs that are compatible with 20-year-old ClearType.

@Andarwinux
Copy link

If display manufacturers really care so much about this issue, they obviously know a more direct and effective way to do it, and Apple knows it too.
Just stop producing e-shit with a ppi below 300 and to hell with anti-aliasing.

However it affects their profits so they won't do it and just shift all the blame to Microsoft.
Not that Microsoft is blameless for this, but the manufacturers and trolls who think HiDPI is pointless should definitely check themselves first.

@mdrejhon
Copy link
Author

mdrejhon commented Jan 5, 2025

I just added this bullet:

- Global subpixel rendering for odd pixel layouts (e.g. QD-OLED, WOLED, etc) similar to ClearType.

To the new Blur Busters Open Source Display Initiative, in the specification section, halfway down the page.

Perhaps this is an alternative route? It can be done at the driver level, the display level, the software level, the operating system level. In this case it would be at the operating system level.

However, there's an issue with the Windows Composition Swapchain (cc: @jwmsft @SeattlePseudoGenius @stevewhims the authors of the Microsoft article) that Microsoft will need to fix first, if this alternative route is the OLED subpixel rendering incubation route.

This could in theory be a global-screen PowerToy "plug in refresh cycle shaders" incubation (including our OLED subpixel shaders that can run on any commodity GPUs) instead of a OLED "ClearType Tuner 2" PowerToy sequel to the old ClearType Tuner PowerToy.

Is this a low-lying apple easier for Microsoft?

SteamOS is onboard. Email from Valve just confirmed they are going to support the initiative with a refresh cycle shader hook.

There are mainstream and niche use cases of an OS-wide plugin refresh cycle shader system. Some refresh cycle shaders add ergonomic features (improved subpixel handling), others simulate the electron beam of the open source CRT tube simulation on github that looks much better than BFI. I collab'd with GPU alumini Timothy Lottes.

But the exact same workflow also enables plug-in OLED subpixel rendering shaders! Early experiments worked (display WIndows in 5K, subpixel-aware scale down to fit 1440p, whole display looks nice on QD-OLED, and is definitely an alternative viable route. Set Windows DPI double the normal, and all the text is subpixel-slotted properly, as is all graphics (bitmaps, etc).

Will Microsoft follow in line of SteamOS?

@Snevenz
Copy link

Snevenz commented Jan 23, 2025

Image

I added a 64x64 grid to the Samsung QD-OLED panel pic. I count it as
PixelLayout=-19,-21,0,19,21,-21
But it doesn't fix fringing, there are too many other parameters. The baseline improvement is to use BetterClearTypeTuner set to grayscale. Microsoft needs to get on the stick.

@mdrejhon
Copy link
Author

mdrejhon commented Jan 23, 2025

I added a 64x64 grid to the Samsung QD-OLED panel pic. I count it as PixelLayout=-19,-21,0,19,21,-21 But it doesn't fix fringing, there are too many other parameters. The baseline improvement is to use BetterClearTypeTuner set to grayscale. Microsoft needs to get on the stick.

That's great work if you took a photo and zoomed it.

But Don't Forget The Margins!

You forgot the margins at the botttom-right corner and botttom-left corner.

Your fully-oversaturate-filter on a photo should look approximately like this, with paddings on the outers (roughly equivalent to half the space between subpixels witthin the center) -- you accidentally cropped that out:

(IMPORTANT: EXAMPLE ONLY; NOT EXACT)
Image
(IMPORTANT: EXAMPLE ONLY; NOT EXACT)

Basically, you should NOT crop the outer margins.

The correct instructions are:

  1. Photograph OLED with macro lens
  2. Crop to an exact number of subpixels (no partial pixels)
  3. Count number of pixels across the whole photo
  4. Count number of subpixels across the whole phoot
  5. Divide step 3 by step 4
  6. This better preserves outer average margins

This is not followed by your photo; you overcropped -- this guarantees more fringing than otherwise.

Once you fix this, the fringing will go down a little bit.

That said, greyscale can be better -- especially if the scaling algorithm or gamma correction is not gamma-corrected, creating tintings in the antialiasing. So antialiasing algorithms need to do gamma2linear / linear2gamma (SDR) and linear2pq / pq2linear (HDR) math algorithms. That's because RGB(127,127,127) is not half the number of photons of RGB(254,254,254) because of the gamma curve. So antialiasing needs to be gamma-compensated in ClearType-style algorithms. I don't know if MacType uses gamma-compensated antialiasing.

@Snevenz
Copy link

Snevenz commented Jan 23, 2025

Thanks! That's exactly the info I (we, the community) need if we are to crowd-source anything. Waiting for TPTB to provide an obvious and well overdue solution, sadly, isn't working.
My original pic was not a macro, I took it from your post near the top:
https://user-images.githubusercontent.com/59981975/232668234-2a83203c-b633-4071-b9b9-acde28aa80b9.png
I will see what happens when following your instructions using the actual macro pic you provided instead:
https://user-images.githubusercontent.com/59981975/232666695-e43a5947-e489-4f33-b4e9-eab8e6bf85af.png

@mdrejhon
Copy link
Author

mdrejhon commented Jan 23, 2025

EDIT: superseded by new comment at #25595 (comment)

@Snevenz
Copy link

Snevenz commented Jan 23, 2025

Hello mdrejhon,

The macro image posted above is unusable because no two pixels look the same so none can be chosen as a golden pixel for measurement. Some vertical rows have clear space between them while some almost touch.
My phone goes to 10x and doesn't come close to capturing a usable image so I can't attempt the macro photo measurement method for now.
Since a macro photo would include whatever blur/subsurface scattering/internal reflection/refraction or other distortion is caused by the screen covering the pixels but wouldn't change the subpixel centers, I will attempt to re-measure using the clean image to see what kind of difference I get.
I think the clean image is a macro photo after all:

Image

@mdrejhon
Copy link
Author

mdrejhon commented Jan 23, 2025

The macro image posted above is unusable because no two pixels look the same so none can be chosen as a golden pixel for measurement. Some vertical rows have clear space between them while some almost touch.

The great news is that this isn't necessary.

We ONLY need to get within human perceptual error margins. I can definitively confirm this is possible, the problem is in the details (e.g. correctly gamma-corrected antialiasing).

It simply means the weak link is in the antialiasing algorithm of MacType -- not by what you're saying. If there are problems, it simply means the weak link is somewhere else.

If it's 0.1% off, big whoop. But your image has a gigantic almost >20% error margin due to the wrong margins.

I am familiar with many of the error margins involved.

Remember I am cited in over 30+ research papers.

We're focussing on the mountain, not the molehill.

@Snevenz
Copy link

Snevenz commented Jan 24, 2025

I would not presume to argue with you, I think you misunderstand me. I was only saying that I might be able to use the "clean" image for a proper measurement. I understand that my original measurement didn't include margins. I will correct and post here as soon as I can get it done. I print the thing out on a piece of paper and count that way. I might not get it right the next time either but will eventually.

Meanwhile, you asked if MacType has gamma settings. From the default.ini:
; [Gamma Correction Mode]
; -1:Disable; 0:Use GammaValue; 1:Use sRGB Gamma; 2:Unknown
GammaMode=0

; [Gamma Value]
; Effective when GammaMode=0
; sRGB = 2.2, Windows ClearType GammaValue is 1.4
GammaValue=1.5

Finally, I wish to make it clear that I know nothing. I bought an expensive OLED monitor that doesn't look correct and that's why I'm trying to help. The lack of action on this tricky subject, and why it's being left to amateurs, is confusing. So please take it easy on me.

@rickbrew
Copy link

Create a "Display Shaders PowerToy" at least partially compliant with v1.01 of Blur Busters Open Source Display Shader Initiative.

A heads up on this: I can't speak for them, but Microsoft may be less keen on this than you may think ... and it's for security reasons. I know from my Windows-related graphics discussions with @Sergio0694 and @ahmed605 that, while DirectComposition and Windows.UI.Composition do have an effects API, they very explicitly do not allow custom pixel shaders despite the underlying API (Direct2D) having the capability.

The reasoning is something about security. For example, you could imagine a smart-enough malicious shader swapping the order of Yes/No buttons on a security-related dialog box, or peeking through the Mica blur to fish text out of something.

I don't think there's a technical reason this can't be done, but the security concerns are certainly legitimate enough.

@mdrejhon
Copy link
Author

mdrejhon commented Jan 24, 2025

Finally, I wish to make it clear that I know nothing. I bought an expensive OLED monitor that doesn't look correct and that's why I'm trying to help. The lack of action on this tricky subject, and why it's being left to amateurs, is confusing. So please take it easy on me.

Fair!

Just wanted to point out that wrong padding margin is an error margin (pun on word "margin"!), was simply pointing out a giant known error margin.

The reasoning is something about security. For example, you could imagine a smart-enough malicious shader swapping the order of Yes/No buttons on a security-related dialog box, or peeking through the Mica blur to fish text out of something.

That's a very reasonable observation.

What about a Windows Store approved shader system?

Obviously, I'd pay whatever developer fees (which I think are 100-500) to get a shader approved, on a per-shader basis.

Discussions are ongoing at Valve, but I think SteamOS is considering something similar for Steam store to prevent cheat shaders for games.

@rickbrew
Copy link

rickbrew commented Jan 24, 2025

What about a Windows Store approved shader system? I'd pay whatever developer fees (which I think are 100-500) to get a shader approved.

You'd have to ask them ¯\(ツ)/¯ I just wanted to point out that getting this to work is more than just figuring out the how.

@mdrejhon
Copy link
Author

mdrejhon commented Jan 24, 2025

What about a Windows Store approved shader system? I'd pay whatever developer fees (which I think are 100-500) to get a shader approved.

You'd have to ask them ¯_(ツ)_/¯ I just wanted to point out that getting this to work is more than just figuring out the how.

Yes, asking Microsoft, this is a deep think.

That being said, I'm adding a "Security Considerations" section to Version 1.02 of the Blur Busters Open Source Display Shader initiative (www.blurbusters.com/osi), to acknowledge this. I already mention it in passing but it should be a separate Security Considerations section.

In the framework of a theoretical PowerToy, it could be potential opportunities to incubate alternative methods of addressing security considerations, while providing a "beta unsupported venue" easily blocked by corporations.

@rickbrew
Copy link

You might be able to find another angle to bump up the value proposition of such a project. Like maybe there's some interesting or niche accessibility-related stuff that Microsoft doesn't have the motivation or resources to pursue, but they're willing to provide the hooks for someone else to plug into.

@mdrejhon
Copy link
Author

mdrejhon commented Jan 24, 2025

You might be able to find another angle to bump up the value proposition of such a project. Like maybe there's some interesting or niche accessibility-related stuff that Microsoft doesn't have the motivation or resources to pursue, but they're willing to provide the hooks for someone else to plug into.

Yes, I had recently added that bullet to the Possible Use Cases of Refresh Cycle Shaders.

P.S. Rick, I love your paint-dot-net app; I use it for most of my images at Blur Busters.

EDIT: I have now added a Security Considerations section to Version 1.02 of the Blur Busters Open Source Display Shaders initiative.

@Snevenz
Copy link

Snevenz commented Jan 24, 2025

Here is the new pixel image. Will you please advise whether it's correct and if so how to proceed with measurement?

I make a general note that color adjustments can change the boundaries of the pixels somewhat, because where subpixel ends and blur begins becomes subjective. I've experimented with extremes and overall relational measurements don't change much at all. Still, I exercise discretion during enhancement.
Another note is that I use Irfanview and paint.net. I am not a graphics person. I think with Photoshop you could automate all the steps I use.

Image
The below image is the same as the one above, it's still RGB, but the colors have been inverted to make them easier to see. That's why the green pixel is red.
Image

@mdrejhon
Copy link
Author

mdrejhon commented Jan 24, 2025

I make a general note that color adjustments can change the boundaries of the pixels somewhat, because where subpixel ends and blur begins becomes subjective. I've experimented with extremes and overall relational measurements don't change much at all. Still, I exercise discretion during enhancement. Another note is that I use Irfanview and paint.net. I am not a graphics person. I think with Photoshop you could automate all the steps I use.

Much better, much smaller error margins.

The top one is more proper, since red/blue is side by side on most QDOLEDs AFAIK. If your screen shows top green fringe for white text on black, and purple bottom fringe for white text on black, your image is correct. But if you have purple top fringe and green bottom fringe for whites on black -- your crop is about half a pixel off vertically. But instead of 2, I should inform that there are 3 different possible crops, try them all, since they offset slightly differently horizontally and vertically -- to make sure you know the subpixels-per-pixel is correct.

Either image has much smaller error margins in their margins than the original margins. For both, compute the new pixel centers of these images and plug them in accordingly. The problem is you'll have to determine how the subpixels are aligned -- you can possibly tell by displaying a full white image and seeing if purple fringing is at top (that means R/B is at top edge of triad) or bottom. And red/green fringing at left/right edge of a full screen white field, will also help.

It's very challenging with many cameras, because the overexposure can erode images. I usually just simply step back from the monitor and zoom into the screen, while using a neutral density filter on the camera lens (or photographing dimmer grey colors), to prevent the overexposure-erode effect.

Once you do, make sure you use the correct gamma (try srgb gamma curve for SRGB mode). If that fails, try 2.2 or 2.4. Now, we have to mention we're getting off-scope of this github, even if it's useful intel. For further optimizing, I suggest more directly elsewhere. Further posts are probably not going to be as productive to discussion as I rather not distract Microsoft from the jackpot feature.

I suggest that no further replies will be done /in this specific venue/ to this non-PowerToy technical support request, since my priority is focussing Microsoft on the subject matter. The intel is still useful to Microsoft to show the problems of OLED subpixels (and how they are fixable) -- but only up to a certain extent (this).

(Use my BlueSky or X or BlurBustersForums to collab with me on tweaking subpixels for now)

Let's get back to the topic at hand;

@mdrejhon
Copy link
Author

mdrejhon commented Jan 24, 2025

Now bringing focus back on topic;

Attention:

cc: @Sergio0694 and @ahmed605

Do you want to contact me privately to discuss the Blur Busters Open Source Display Shaders Initiative? The benefits and use cases are now gigantically innumerable that we need to address this.

Github Commit System for Refresh Cycle Shaders

PowerToy is open source.

Code review of open source shaders can be done, as a measure of security.

Possible Initial Security Method: Open Source Pull Request

Valve told me anybody can submit pull requests for upcoming new Blur Busters Open Source Display Initiative shaders, that can soon be selected at command line for Steam GameScope. They have committed to at least accepting the CRT simulator, but also mentioned that they will accept pull requests for other refresh cycle shaders.

This is their current preliminary chosen 'security' system: Submit a pull request.

We propose that a git pull request method for new shaders, would allow a reasonable compromise, as the Display Shader PowerToy that contains OLED subpixel options (and a few other goodies like CRT simulator and blind-accessibility shaders etc), which I will donate.

With several trusted third party code reviewers + AI scanner + security scanner; I offer to be an additional volunteer code reviewer.

By making it a Display Shaders PowerToy and limiting shaders to pull requests; this may satisfy Microsoft to help incubate the open source refresh cycle ecosystem.

We want to avoid embarking on a worse alternative that is more insecure

We're going to otherwise risk damaging user systems with a modified version of a Windows Indirect Display Driver (worse approach but allows us to run shaders on WIndows Desktop by virtualizing the display + making it primary), and we would like help with a simpler system.

There are already several candidate Windows Indirect Display Driver projects we plan to modify, either iddSampleDriver or Virtual Display Driver or other IDD.

We simply modify it to process a shader, and add a nonexistent display to Control Panel, and make it the primary monitor, while using the secondary display (actual display) as the outtput shader-reprocessed mirror of that primary. Our modified IDD can even hide the original physical monitor, only showing our shader reprocessed image.

This route, unfortunately, means nobody at Microsoft code-reviews a refresh cycle shader. And it is more intrusive (users actually have to install a driver, risking stability too).

We already have our own Extended Validation Code Signing Certificate, and we are planning to work on it eventually once we have several shaders. This allows us to be able to release a virtual display driver to our users.

Can't we compromise? To prevent vendors (including me) from doing a more insecure route?

I have now added a Security Considerations section to Version 1.02 of the Blur Busters Open Source Display Shaders initiative -- including link to the January 24th Valve GameScope email. cc: @rickbrew

Remember the gigantic benefits:

Possible Use Cases of Refresh Cycle Shaders

There are mainstream and niche use cases.

  • Optional display simulators (CRT simulator, plasma simulator, etc);
  • Adjustable pixel response and overdrive (shader-based overdrive algorithm, better LCD overdrive, etc);
  • Accessibility shaders (edge enhancement, color blind, niches not supported in Control Panel, etc);
  • Ergonomic features (deflickering features, destuttering features, etc);
  • Motion blur reduction features (softer impulsing-based simulators using phosphor simulators);
  • Improved gaming and de-stuttering features (simulated VRR, de-jittering gametimes, etc);
  • Improved home theater (Simulating 35mm projector / simulated LCD GtG, less harsh for 24fps OLED);
  • Video processor features (3:2 pulldown dejuddering, etc);
  • Videophile ISF-league features (Color adjustment hooks and preferred-tonemapping hooks);
  • Global subpixel rendering for odd pixel layouts (e.g. QD-OLED, WOLED, etc) similar to ClearType;
  • High-end esports gaming (Some, not all, algorithms are less lag in refresh cycle shader);
  • Integration into multiple third party framegen engines (e.g. Lossless Scaling);
  • Simulation of VRR on fixed-Hz displays via temporal scaling (e.g. CRT-VRR on 500-1000Hz OLED);
  • Easier 3D shutter glasses on ANY 240Hz+ generic display with NO crosstalk;
    (Most 240Hz displays works with generic shutter glasses via LEFT/BFI/RIGHT/BFI sequence)
  • Geometry/de-chroma-aberration shaders used by virtual reality headsets (direct or casting based);
  • Etc, etc, etc.

Free opensource development hours offer

WOLED / QDOLED subpixel-scaling shader offer

Microsoft's Turn:

Create a "Display Shaders PowerToy" at least partially compliant with v1.01 of Blur Busters Open Source Display Shader Initiative.

BlurBuster's Turn:

I will provide OLED subpixel scaling shader filters for free, MIT license -- compatible with an average WOLED and an adverage QDOLED -- gift to you, Microsoft. It will have adjustments (shader uniforms) for slight offsets and biasing adjustments (e.g. for subpixel size), but will mostly follow various OLED subpixel boilerplates

This produces a ClearType effect for everything -- including images, icons, etc.

I will provide all the software developer hours of creating the shaders. The problem is I need a method to plug it into Microsoft Windows 11 operating system.

I will generally need to virtualize a higher resolution internally in Windows in order to successfully downsample it to a visible resolution, e.g. Windows running at 7680x4320 (or even higher) for a modern 4K 240Hz OLED, for successful subpixel-downsample via a PowerToy (that is probably essentially a Shader executor for Windows Composition Swapchain Direct Hook To Windows Desktop for All Apps + All Desktop) <-- This is the part I need Microsoft to deliver for generic shader plugins.

You'd disable ClearType at the WIndows OS level, and instead use the subpixel-scaling shader. There are performance considerations, but sometimes when some of us are using OLEDs as software development devices (e.g. Visual Studio on OLED), we need solutions. With 3-year burnin warranties and improved office productivity benefits (120vs480 OLED was recently preliminarily blind-tested more human visible than 60vs120 in office productivity environments for smooth scrolling/panning behavior).

PowerToys are open source. Security consideration can be initially covered by limiting shaders to being approved via strict git pull request code review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Idea-New PowerToy Suggestion for a PowerToy
Projects
Status: No status
Development

No branches or pull requests