A first part of the layers/masks patch

Dmitry Kazakov dimula73 at gmail.com
Sat Sep 26 21:20:16 CEST 2009


On Sat, Sep 26, 2009 at 10:52 PM, Cyrille Berger <cberger at cberger.net>wrote:

> On Saturday 26 September 2009, Dmitry Kazakov wrote:
> > On Sat, Sep 26, 2009 at 10:14 AM, Cyrille Berger <cberger at cberger.net
> >wrote:
> > > On Saturday 26 September 2009, Dmitry Kazakov wrote:
> > > > > for a,b,c) it doesn't work perfectly, but it's not that broken.
> > > >
> > > > But still not usable =(
> > >
> > > Well now, I have fix all the issue with the alpha colorspace (I have
> > > added alpha darken). All it remains to do is to make mask support the
> > > indirect painting interface.
> >
> > Well, no. You've not fixed that. It's just a workaround.
> >
> > Testcase:
> > 1) Create any mask (e.g. transparency mask)
> > 2) Paint something on a mask to get transparency
> >
> > Let's imagine after these steps you decide to make some rect visible
> again,
> > what are you going to do? In a good editor you just select this rect with
> > selection and fill it with a white color (or any semi-transparent
> one(!)).
> Why white ?
>

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.


 > You CAN'T do the same with krita, as far as i can see. Yes, you can use
> > pixel eraser tool (that is not so obvious, btw), but what if your rect is
> > 1024x1024 size?
> No, I would say, there is a bug in the fill tool that needs to be fixed.
>

Do you suggest adding a transparent pattern for a paint bucket? Why don't
you suggest adding an "alpha channel selector" to a usual color selection
pallet?



>
> > Are you gonna fill it with a small brush?
> you can use bigger brush....
>
> > That's why i repeat again, we must use grayscale-like system for
> > transparency masks. Current discreet selection system is a dirty hack.
>
> Sorry, but I feel it's the other way around... How are you supposed to know
> that white correspond to transparent ? (or is it black ?) While choosing
> transparency for setting the transparency sounds more logical to me.
>

Repeat.
Transparency is represented by a grayscale*-like* CS. You can name it as you
wish! If you name it "transparency", then "black"(0) is opaque, "white"(255)
is transparent.
The think i'm trying to say all this time - *"transparency" value of the
brush and "alpha" channel of the brush should be two different channels*.
This allows selection of the "transparency" value by the user. More than
that it allows "fading" of the brush.

And there is no difference how are you going to represent this
"transparency" channel: black/white or even pink/purple =)



>  > > It doesn't use the gray color, but this is by design, it means you
> have
> > > to use
> > > the opacity setting (this is something we have been debating in krita
> for
> > > years, wether opacity belongs in the tool or in the color selector).
> > > Gradient work if you choose a gradient with transparency, in a future
> > > release,
> > > it could be worth investigating adding an option to the gradient tool
> for
> > > working on the transparent channel instead of colors (I think it might
> > > have a
> > > broader use).
> >
> > Do not create additional abstraction for a user. He knows what the color
> >  is, this is RGB values. The user DOES NOT know anything about our
> INTERNAL
> >  representation of the color as rgbA. RGB != RGBA. He knows (or should
> >  know) _nothing_ about alpha channel of the brush or of the layer. It's
> >  editor's job to think about alpha, not user's one!
>
> Hum ? alpha I would agree, but transparency... I sure hope the user would
> know
> about transparency/opacity otherwise why would he want to use a
> transparency
> mask in the first place ?
>

We don't understand each other.
Of course the user may know anything he wish, alpha-masks or even kernel
developing. I mean that we must not reveal to him our internals - that is
"alpha channel of the brush".



>  > PS:
> > Sorry for brute words. I don't know how to explain it. I repeat it again
> >  and again...
> > We have a weird selections system and you don't even want to make it
> >  better.
> Sure I want, I just disagree with the assumption that color has a meaning
> for
> selection.
>

Color is just a representation. We just need a separate channel for
"transparency"/"opacity" value. And there is not difference how we will
represent it.

PS:
You can try to open a PS and take a look how painting on masks works there.
Try to change current color and you'll see the difference.


-- 
Dmitry Kazakov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/kimageshop/attachments/20090926/f0423ae8/attachment.htm 


More information about the kimageshop mailing list