MyPaint engine and brushes

Hey there. I saw a few topics about this but some were closed already, so I’m opening another as a long time MyPaint fan.

First off (since it’s my first time appearing in here), THANK YOU SO MUCH for everyone putting so much work into Krita. I love so many of the features I’d have a hard time remembering everything. Animation, apng support, and so much more. Thank you! I think the final thing I really wanted that kept me being torn between Krita or the rather tool lackluster MyPaint was their brush engine. I was already trying to figure out how to mix the two when even some .ora saving is different between the two… So this is beyond awesome.

So here’s my thoughts on what makes the MyPaint engine special: Procedural. That is the key word. Whether it be immitating a pencil, brushstroke or some grass, it feels so smooth and it looks so natural, unlike a repeated texture you can catch a grimpse on. It has some flaws like not supporting bends and other things, but this is the special thing. There aren’t a huge amount of brushes developed for it, so if you look only at that, it may not seem impressive, but the potential is huge. I see Krita is only supporting the older engine, I hope maybe it can be incremented in the future as the newer one also does Surface/Grid Mapping (like for immitating canvas, or really anything else you can make up with a Procedural GridMap).

I saw some other Krita brushes are going more in this direction, and some are awesome in their own right (The Sketch engine is stunning!), but MyPaint ones still feel better at the above.

I also missed the brush suggestions topic, and my favorites would be the ones that immitate paint or pencil, like Dieterle’s. I’ll be playing with the engine inside Krita to see what I can make with it, but if support could be extended for this, my world would be perfect.

4 Likes

Just as an offtopic, are there any special MyPaint brushes on the new engine that you like the most? I know there is the pigment mixing, which is cool, but you’re talking about other features too. I also think the Dieterle’s brushes are the new ones so they cannot be in Krita just yet.

I would like to get the new engine there too, mostly for pigment mixing. But it depends on external factors.

Dieterle are among my favorites, specially the paint ones. I also currently have some grass and leaf brushes that I made custom (still tweaking them, hadn’t been using MyPaint a lot until the latest release came). Pretty sure those are among the new ones though?

The color mixing is really nice too, but I mostly like how smooth the textures feel and how much you can fiddle with all the variables to have just what you need. Some of the equivalent brushes on Krita (and really, a lot of other programs) just have that artificial feel.

I want to play with the GridMap and the mapping for varying brushes more as well (ie: the experimental or grass single leaves, and gridmap to texture a few others)

What kind of factor is this? Libmypaint 1.5.0 backports these functions. Is it because of incompatibility? (I have been studying mypaint brushes in recent days, and I am very interested in “buckets”)

After some investigation, I found that krita seems to contain the latest version of libmypaint. And some new brushes of 2.0 are also available in krita. At least they used the “offset” parameter

I wonder why pigment cannot be used, then - maybe @wolthera would know?

basically, we need a separate implementation of some of the API calls (in mypaint surface), and there was never time to look into that. (There’s basically a compatibility set of API calls, and a near identical Spectral set of API calls, and we only have the former implemented).

Do you know how hard would it be or how much time would it need to implement those? Out of curiosity.

not of the top of my head, part of the problem is that the new api calls weren’t very well documented the last time I checked.