I tested that one and it feels like a similar technology to mixbox, where blue and yellow are mixed into green, while high saturation and low lightness colors maintain saturation when mixed with white. However, unlike mixbox, CSP’s color blending seems to be darker.
I just discovered something that seems to have new possibilities
https://mobile.twitter.com/mattdesl/status/1637476866935193600
It seems to be the spectral color mixing code of the MIT license
Yes, I noticed that too.
I tried the new spectral algorithm mentioned above, it’s almost an 81 channel version of the mypaint spectral algorithm, so the pixel brushes also see residual shadows due to the delay, and the smudge brushes are very jerky and almost unusable, but I prefer this blending result to mixbox, the best solution so far would be lut, but I don’t know how to implement it
Comparison with mixbox, whose effects sometimes seem less pronounced:
Hi all, thanks to Ronald van Wijnen open source spectral blending algorithm, this algorithm skips the pow function which seriously affects performance, so the speed is greatly improved, the blur brush can be used normally with almost no latency, but the data in the open source code seems to be unusable, due to the number of outliers that will be generated, resulting in the blur brush not working properly, e.g. a continuous application of white will eventually turn black as well; so I used the 81 channels of spectral data mentioned above, although the blur brush has a delay when it is larger in diameter, I think the delay can be mitigated by enlarging the canvas, if I could find more accurate spectral data with a smaller number of channels (e.g. half the number of channels) there would be no performance problems, I don’t know how to solve this so I will submit the 81 channel code first
Translated with DeepL Translate: The world's most accurate translator (free version)
I have submitted a merge request, if anyone is interested they can compile and test it: Add spectral blending mode
@urzeye
such a good news! and Ronald van Wijnen will release version1.0.1 in next week, which it’ll contain the shader function
is it possible that you can make a windows build? i would love to have a try
WOW!
Fantastic news and thanks for your hard work!
I’d love to test it out, but I have no idea how to compile it or integrate it in my krita code, can someone help me out?
Looking forward to it :D!
Is it because the source code is javascript? I think you can ask Ronald for help.He said it would be nice to see what others do with the library
I’ve tested it in krita with those data and there seems to be something wrong with the data, although I can’t see the difference with normal brushes, when using a smudge brush it has a bad effect, whatever colour is applied will first move closer to yellow and then turn black
It seems that there is a problem with the mixing with black. Is it possible that the reason is that there is no pure black in the pigment? Perhaps the color compensation of Mixbox can achieve this. I guess Ronald didn’t design it for drawing software, so he overlooked some extreme situations
There should be some problem with the data, I used the averaging method to try and get a lower number of channels, but a similar result occurs, with an unusual effect when the upper colours are less transparent, so we should need to calculate the new spectral data, but I don’t know how to do it
I have now managed to add spectral blending to krita’s KoMixColorsOp, which means that spectral blending can be used for gradients, picker sampling and smudge brush sampling, I will submit them if I have time after the spectral blending mode performance issues have been resolved and merged, but there are still a lot of issues that need to be resolved, at the moment spectral blending only works with linear profiles, maybe Perhaps a confirmation option could be added, such as using spectra for picker sampling and smudge brush sampling when the profile is linear RGB, or maybe a separate tool setting could be added? My code level is too low to implement them
I do like the idea of spectral gradient. I can see applications beyond painting there and gives a little bit more options when using gradients.
Comparison with the perceptual blending of clip studio paint 2.0:
Above is the result of mixing in clip studio paint, below is the result of spectral mixing tested in krita, I really like the blending result
CSP version seems very RGB mixed in comparison. Good job.
I get the feeling that making sub surf scattering will be amazing with behaviour like that.
Since the algorithm does not have complex operations, it might be possible to optimize it using XSIMD, I have tried but failed probably due to a coding error, the official krita developers might be able to implement it
I will release a new version coming week with some bug fixes.
Thanks for open sourcing the code for spectral blending, I really like the blending results!










