HDR: What if we supported colors beyond the mortal realm? #17203
Labels
Area-Rendering
Text rendering, emoji, complex glyph & font-fallback issues
Issue-Feature
Complex enough to require an in depth planning process and actual budgeted, scheduled work.
Product-Terminal
The new Windows Terminal.
Milestone
Ever since my DEC VT520 got that Boston Dynamics ColorVizion HD ULTRA upgrade, weird things have been happening. First I've been hearing some weird Austrian-English voice in the background and now my leather jacket and car keys are gone. For some reason my smart door won't open anymore and I'm locked in. Just today my printer has spat out a ransom message that reads "Big sRGB is a lie!". Apparently I'm only freed if we add some sort of HDR and extended color space support. Please send help!
Jokes aside, I think it'd be kind of funny if we supported scRGB with half-precision floats, just like what DWM uses for composition on HDR displays. That would allow us, either just for fun when defining colors in a theme, or maybe for dithering, to use fine grained floating point brightness values and chromaticity (color) values. That way we could finally ship an official "Barbie+" theme were all colors are pink but some are even pinker than the others. Here's what scRGB looks like, the white triangle is sRGB:
(Source)
This requires two changes:
All relevant documentation can be found here: https://learn.microsoft.com/en-us/windows/win32/direct3darticles/high-dynamic-range#setting-up-your-directx-swap-chain
til::color
in most places inside WT as it's limited to sRGB. It's just fine for VT related code or code based aroundCOLORREF
, however. The settings model needs a color struct that can represent any arbitrary space and gamut in order to not be tied down to any particular representation. The render can then convert it losslessly to scRGB floats. This also avoids loss during blending.The text was updated successfully, but these errors were encountered: