Transparency, opacity, mask editing (Was: Re: A first part of the layers/masks patch)

enki enkithan at free.fr
Sun Sep 27 01:24:32 CEST 2009


Cyrille Berger wrote:
> On Saturday 26 September 2009, Sven Langkamp wrote:
>   
>> At the moment there is a fundamental difference between Gimp/Photoshop and
>> Krita in the way we see masks. In both cases we have and (8-bit) one
>>  channel paint device, so not a technical difference.
>> The actual difference is how these channel is interpreted: In
>>  Gimp/Photoshop is a grayscale representation while in Krita it's an alpha
>>  representation.
>>
>> The grayscale way is probably what most artists are used too, even if the
>> meaning of black and white is arbitary. The advantage is that it match good
>> with gradient and fill.
>>
>> The way Krita uses is closer to the physical representation either there is
>> something (color) or you can look through it. The problem that Dmitry
>> descibes is that the only way to "paint" transparency is the eraser tool in
>> Krita, which might be unusual for users form other editors. The bigger
>> problem is that you e.g. can't use a transparent color in the fill tool.
>>
>> I hope that's the correctly summarizes it.
>>     
> Ok now I get the problem. 
>
> First, I will restate that I don't like the use of color for transparancy:
>
>   
>> I can't remember which color is used usually (e.g. in a "well known
>> graphical editor"). I guess, when we paint with white paint the image
>> becomes opaque, when we paint with black paint - becomes transparent, with
>> gray color - becomes semi-transparent.
>>     
>
> That's exatly my problem with using color. From a technical point of view, it 
> makes sense to have black==transparent == 0, white == opaque == 255. But I 
> don't see how it can have sense for an user (and from my point of view, 
> because photoshop does it isn't a valid answer, we are not aiming at cloning 
> all its broken behaviour, if it's good lets use it, otherwise lets innovate).
>
>   
If one day Krita use a node system, it'll make sense for the user too. 
Then at any moment he will be able to use a greyscale image as mask, 
channel or layer. Data and effect would be clearly separated then.
Now the problem is that in the current state, both can be conflicting. 
If I see brushes as transparency, I won't understand why my black opaque 
brush don't draw anything while it IS opaque.And that's my main problem 
with Photoshop: You can use both eraser/paint and opacity to set the 
transparency.
I tend to use black/white..but only because it's easier to switch 
between black/white with one keyboard shortcut, than eraser/paint tools 
with two differents keys :P.
Maybe it would be better to separate greyscale and transparency in two 
differents mask modes ?
> Maybe we should reinvestigate the whole transparancy with the color selector 
> thing. We had that debate see [1] and [2] (around 18:38 in the log).
>   
Before I didn't really care, but now I really think opacity should be 
merged with color selectors. I don't see any problems from an user point 
of view. That would finally allow us to use color selectors for shapes 
(and Karbon badly need a real one too), that would save the size of a 
docker and unify the UI between apps.So many advantages.. that is worth 
a big ugly hack :p
> In our previous discutions on the subject we considered that the choice 
> between transparancy and opacity was wether to put the choice in the tool or 
> in the color selector. But what if, actually, we need both. Because currently, 
> the opacity is mainly used to control how much of the color is mixed. While 
> the transparancy in the color selector could be used to paint with transparent 
> color, either on a layer (either for filling or not), or on a selection.
>
> I am trying to think about the math for that, and also about wether it would 
> make sense for an user, and we would probably have to rethink about the 
> "opacity" label, to make it have more sense.
>   
I often had the need for an "absolute" opacity setting for paint layers 
:). But I'd see it more as two composite modes :
- one that only replace the pixel transparency with opacity and keep the 
existing pixel color (example: make that liquid more transparent, but 
keep it green even if my brush is red).
- and one that would replace the pixel transparency and color with 
absolute values set in the color selector (example: replace grey metal 
by blue water).
> [1] 
> http://wiki.koffice.org/index.php?title=Colordialogs#Opacity_as_part_of_color
> [2] http://lists.kde.org/?l=koffice-devel&m=123060912408849&w=2
>
>   




More information about the kimageshop mailing list