Re: [csswg-drafts] [css-color-4] Channel clipping breaks author expectations, especially when using 'perceptually uniform' spaces (#9449)

> Sorry, yes, that was supposed to be about where the normative/non-normative should best sit.
> 
> I would prefer a normative solution to the problem of handling "extreme" colors produced by `oklab` and `oklch` (e.g, the ones from [this comment](https://github.com/w3c/csswg-drafts/issues/9449#issuecomment-1929679581)), which gets us to "some very wide gamut". Something around the size of rec2020, but something geometrically nicer (smoother -- no literal sharp corners), and maybe being based on the full visual spectrum.
> 
> Then from getting from that "some very wide gamut" to the actual screen, I'd prefer things to be non-normative.

If we define a normative gamut mapping algorithm, I don't think there's value in introducing a two-step process where one part is normative and one part isn't. At that point we may as well go all the way 😁 

-----

If we're going to be making a certain GMA normative, we need to have a good sense of the constraints. E.g. @cynthia recently conveyed some of the constraints hardware GPUs impose on this process:

> 1. A big lookup table won't fly, as there are memory limitations (in the case of Chromebooks, 4GB shared by system AND the GPU [which includes the video encoder/decoder])
> 2. Anything non-deterministic in terms of convergence time is also a no-go. Since each pixel has to go through this pipeline anything that can make it randomly miss the next vsync is challenging to use without a tradeoff discussion. (Is it worth giving users jank in exchange for pretty colors)
> 3. The faster the better, if there can be an early exit branch that guarantees faster termination, good
> 4. Algorithm should be GPU parallelizable (ideally, say, implementable as a stateless kernel)

It would be good to figure out:
1. How big is big when it comes to LUTs?
2. What constraints does 4 introduce in terms of the algorithm? 

-- 
GitHub Notification of comment by LeaVerou
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/9449#issuecomment-1978970551 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Tuesday, 5 March 2024 15:01:24 UTC