mattdesl
banner
mattdesl.bsky.social
mattdesl
@mattdesl.bsky.social
artist, coder
What I’m working on is a bit more homebrew, tailored specifically for a project I’m working on. The pigment curves are optimized to match physically measured spectral data, and the mixing model is pretty different than spectraljs’ approach.
May 5, 2025 at 10:58 AM
still image—
April 7, 2025 at 6:34 PM
Here is another selection using permutations of three unique pigments instead of two. This is equivalent to uniform sampling within a 3D simplex, i.e. a tetrahedron.

It leads to less purity of any single ink, and is a little lower in overall saturation.

(GIF doesn’t work on BlueSky I guess?)
February 19, 2025 at 10:58 AM
Adding another pigment (dimension) is quite easy with a neural network. Now it predicts concentrations for CMY + white + black, allowing for smooth grayscale ramps and giving us a bit of a wider pigment gamut.
February 4, 2025 at 8:17 PM
A couple things that aren’t clear to me yet, is how Mixbox achieves such vibrant saturation during interpolations, and how they handle black & achromatic ramps specifically. I may be struggling to achieve the same because of my “imaginary” spectral coefficients.
February 3, 2025 at 10:13 PM
I like the idea of a neural net as it's continuous, adapts to arbitrary input, and is fast to load and light on memory. However as you can see, it has a hard time capturing the green of the LUT at the beginning (although it doesn’t exhibit the artifacts with the saturated purple input).
February 3, 2025 at 10:13 PM
I think certain dev tools could get away with it—like Vite, or my own canvas-sketch. I think the UX of an electron app may be better for average user but also hurts experienced devs; not just install time but also lack of browser diversity which is crucial if building for the web.
January 25, 2025 at 8:48 AM
Looks amazing Scott. 👏
January 25, 2025 at 8:40 AM
It's closer to Mixbox's implementation; using four primary pigments (each with a K and S curve), and then using numerical optimization to find the best concentration of pigments for a given OKLab input color. It's only running in Python at the moment, but LUT is possible.

github.com/scrtwpns/mix...
GitHub - scrtwpns/mixbox: Mixbox is a library for natural color mixing based on real pigments.
Mixbox is a library for natural color mixing based on real pigments. - scrtwpns/mixbox
github.com
January 23, 2025 at 1:40 PM
It just sets the background fill to none at the moment. It would be nice to have more options like per layer exports though.
December 20, 2024 at 1:11 PM
Reposted by mattdesl
Bitframes - an NFT project / crowdfunding initiative by @mattdesl.bsky.social to produce a documentary on #generativeart

bitframes.io
BITFRAMES
A generative art project and documentary film crowdfund by artist Matt DesLauriers.
bitframes.io
December 3, 2024 at 9:08 PM