Bug 457530 - Option for masks to be driven by alpha instead of intensity
Summary: Option for masks to be driven by alpha instead of intensity
Status: REPORTED
Alias: None
Product: krita
Classification: Applications
Component: Layer Stack (show other bugs)
Version: 5.1.0-beta2
Platform: Appimage Linux
: NOR wishlist
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-08-05 16:31 UTC by tomtomtomreportingin
Modified: 2023-10-23 23:23 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description tomtomtomreportingin 2022-08-05 16:31:56 UTC
The current behavior of how masks are affected by color isn't intuitive to artists at all. 

At the most basic level: why does painting white on a mask *add* more of the visual effect, despite erasing doing the opposite by removing the visual effect? Some examples:

* I have finished inking something and I want to add screentone. I lasso select a piece of the artwork and create the screentone fill layer. However, it turns out my selection wasn't perfect, so I use my eraser to remove bits I don't want. Going by intuition, it would follow that going back to a black opaque color would add bits that I do want. However, this turns out to not be the case: painting in black on the mask will instead remove more the halftone. I must switch to white if I want to add additional halftone.

* There are bits of my artwork that I want to hide in a transparency mask. I select the bits I want to hide, invert, then apply a transparency mask. Like before, it seems like my selection was not perfect, so to resolve this matter, I use my eraser to hide parts that I don't want to seen, and *attempt* to use my black brush to show what I do want to be seen. As shown in the previous example, this is apparently foolish. (I also find it unintuitive that applying transparency masks applies the transparency to everything outside of the selection, but that's a bit of a separate matter.)

I get caught up in this a lot, so it would be really nice if this made more sense. Erasers and white color should both have the same removal-like effect on a mask while black should have an additive effect.
Comment 1 tomtomtomreportingin 2022-09-14 20:52:18 UTC
Hmmm, after thinking about this more, I think it might be better if masks were driven by alpha rather than intensity, so that black and white would have the same effect while transparency (erasing) would have the opposing effect. In the case of a transparency mask, erasing would hide content while using black or white would unhide content, therefore simplifying the process. Would this be possible as optional behavior?
Comment 2 tomtomtomreportingin 2022-09-14 21:03:02 UTC
Changed the title to conform with my reworked request.
Comment 3 tomtomtomreportingin 2023-05-20 03:35:26 UTC
In the most basic case, painting a black circle and converting it to a selection mask produces nothing, which is very unintuitive to me.
Comment 4 tomtomtomreportingin 2023-10-23 23:23:28 UTC
In the case of transparency masks, I've started using regular paint layers set to Erase instead, which provides much more intuitive behavior. 

In comparison to transparency masks, Erase layers will mask anything covered in opaque color, regardless if the color is black or white. Erasing the opaque color would unmask it, as I would expect.

For reference, here's another Krita user reaching the same realization: https://old.reddit.com/r/krita/comments/15oviyl/tip_if_you_are_ever_having_troubles_with/

Sadly, there is no similar workaround for other types of masks/special layers.