Practical Pigment Mixing for Digital Painting

Today’s painting software has a significant flaw: colors do not mix like actual paints.
For instance, blue and yellow make gray instead of green.

This is because the majority of painting software is built around the RGB representation. RGB simulates the mixing of colored lights. Paints, however, get their color from pigments. Physically-based mixing of colored pigments is predicted by the Kubelka–Munk model. However, implementing it into any painting software has been too impractical because it required to leave the RGB representation behind and to rebuild the core structure of a program. That's the main reason why Kubelka-Munk has never been adopted by painting software in practice.

We realized that if we want to make Kubelka-Munk practical for integration into painting software, we need to make it work as a blackbox. And that black box must take RGB inputs and produce RGB outputs. Which is what we did. We packed the Kubelka-Munk model into and RGB-in RGB-out box and we call it Mixbox.

Watch how Mixbox performs next to real life acrylic paints and next to current professional painting software:

Mixbox in Rebelle 5

Rebelle is one of the leading software in simulating traditional media and they already have Mixbox in! Watch how the pigment mixing enhances the work with digital oils and watercolors in this beautiful timelapse video:

Try it out!

The best way to understand what Mixbox does is to feel it on your own. Here's a simple online painter where you can play around with it. Don't forget to smudge a lot, it's really fun. Also, switching between Mixbox and Normal mode is pretty entertaining - it makes you appreciate what pigments bring to the table. Have fun!

The Paper

We have written a technical paper that was published at ACM Transactions on Graphics 40, 6, Article 234 (December 2021), and presented at SIGGRAPH Asia 2021. If you are interested in our technology, here are our sources:

If you have any questions, suggestions, or feedback, we'd be happy to hear from you, don't hesitate to drop us a message!

[email protected]

Get Mixbox

I'm an artist

Ultimately, we created Mixbox to make the artists happy. However, the technology is meant for the developers, it can't be handled as a plug-in for individual users. The best way to get Mixbox into your favourite painting software is to tell the creators that you want it!

Adobe Photoshop - community.adobe.com
Adobe Fresco - adobefresco.uservoice.com
Procreate - folio.procreate.art/discussions
Clip Studio Paint - [email protected]
Corel Painter - www.corel.com/en/support
Art Rage - forums.artrage.com
Paint Tool Sai - [email protected]
Sketchbook - sketchbook.com/contact-us
TV Paint - forum.tvpaint.com
Paint Storm - paintstormstudio.com/forum

I'm a developer

Our goal was to make Mixbox practical, so that anyone could easily put it in their software. That's why we packed all the physics into the RGB-in, RGB-out interface. Thanks to that, integrating Mixbox is as easy as introducing a new blending mode. It's just a drop-in replacement for the lerp(rgb1, rgb2, t) function.

All you need to do is download the code from our GitHub repo, and get in touch with us to arrange the license. You can reach us at: [email protected]

I want updates

Leave us your e-mail and we'll let you know if there are any news regarding Mixbox.