feature request: clipping mask layer
This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.
This is a read-only list on gimpusers.com so this discussion thread is read-only, too.
feature request: clipping mask layer | Daniel Johannsen | 17 May 22:39 |
feature request: clipping mask layer | yahvuu | 19 May 14:10 |
feature request: clipping mask layer | Stephen Griffiths | 19 May 14:24 |
4A130BBC.6060101@danieljoha... | Daniel Johannsen | 19 May 21:42 |
feature request: clipping mask layer | Daniel Johannsen | 19 May 21:45 |
feature request: clipping mask layer | yahvuu | 20 May 17:46 |
feature request: clipping mask layer | Daniel Johannsen | 20 May 22:07 |
feature request: clipping mask layer | Øyvind Kolås | 21 May 11:45 |
feature request: clipping mask layer
Problem: Painting (e.g. with wacom-board) complex athmospheric perspective with overlapping objects.
Solution suggestion: A parent base layer determines alpha values for a dependent stack of child layers above the base layer. Then the last layer on top of the child stack e.g. could be the "athmosphere color" for the silhouette of the base layer.
People suggest as workaround the "alpha to selection" feature. But if the silhouette of the base layer has transparency gradients, e.g. when painting clouds, every addition of color to child layers will nevertheless end up opaque in the child layer.
Especially when painting on alpha masks of the child layers to evolve the forms gradually a "clipping mask layer" is in fact the only possibilty of producing complex scenes with athmospheric depth.
feature request: clipping mask layer
Hi all,
On Sun, May 17, 2009 at 10:39 PM, Daniel Johannsen wrote:
Solution suggestion: A parent base layer determines alpha values for a dependent stack of child layers above the base layer. Then the last layer on top of the child stack e.g. could be the "athmosphere color" for the silhouette of the base layer.
i wonder, is what you're proposing the same as the 'group layers
masks' described in
https://lists.xcf.berkeley.edu/lists/gimp-developer/2009-April/022118.html ?
Is this already covered by http://bugzilla.gnome.org/show_bug.cgi?id=51112 ?
Do you envision a user interface for this? The UI Brainstorm always welcomes cool mock-ups: http://gimp-brainstorm.blogspot.com/
greetings, peter
feature request: clipping mask layer
yahvuu wrote:
> i wonder, is what you're proposing the same as the 'group layers
> masks' described in
>
https://lists.xcf.berkeley.edu/lists/gimp-developer/2009-April/022118.html ?
>
> Is this already covered by
http://bugzilla.gnome.org/show_bug.cgi?id=51112 ?
In photoshop it is a single layer that docks to the layer (or multiple layers) beneath it, acting as a mask. In PS it is activated by Ctrl+LMB (from memory) on the edge between two layers.
Layer group masks would achieve the same thing, and sounds easier to understand/ use.
regards,
Stephen.
feature request: clipping mask layer
yahvuu schrieb:
Hi all,
On Sun, May 17, 2009 at 10:39 PM, Daniel Johannsen wrote:
Solution suggestion: A parent base layer determines alpha values for a dependent stack of child layers above the base layer. Then the last layer on top of the child stack e.g. could be the "athmosphere color" for the silhouette of the base layer.
i wonder, is what you're proposing the same as the 'group layers masks' described in
https://lists.xcf.berkeley.edu/lists/gimp-developer/2009-April/022118.html ?Is this already covered by http://bugzilla.gnome.org/show_bug.cgi?id=51112 ?
Do you envision a user interface for this? The UI Brainstorm always welcomes cool mock-ups: http://gimp-brainstorm.blogspot.com/
greetings, peter
Hi to all,
yes your links point in the right direction. I agree, the term "layer
group mask" hits the mark.
I only like to add, that in the layer group it is the alpha value of the
lowest layer in the group
which provides the masking effect for the grouped layers above.
(And not a layer in the middle or on top of the group.)
I am not surprised, that this feature is used a lot in photoshop (here it is called "clipping mask").
Some examples in order to stress how important this is for the painting process:
1)One can start with searching for a good composition by defining only
silhouettes.
Then, in dependency of the silhouette, you can add volume and texture
layers above the silhouette.
2)Often the shapes are not known in advance. Then they are dependend of
normally subsequent painting steps
like adding volume and texture layers. With layer group masks one can
quickly correct all the layers of the object
only by manipulating the base shape layer.
3)Painting objects made of transparent materials like colored glass.
The layer group mask feature would look like the following:
* top layer: highlights (dependent)
* middle layer: glass texture (dependent)
* underlying layer: glass shape in the color of the glass with 50%
opacity (defines the transparency for the dependent layers)
regards, Daniel.
feature request: clipping mask layer
Hi,
Daniel Johannsen schrieb:
I only like to add, that in the layer group it is the alpha value of the lowest layer in the group
which provides the masking effect for the grouped layers above. (And not a layer in the middle or on top of the group.)
hmm, special-casing the bottom layer seems a bit odd to me. I'd expect the layer group mask to be a property of the layer group and that all layers within that group have independent transparency of their own.
Looking at your examples, i assume the photoshop behaviour is convenient because you usually start with a layer and subsequently turn that into a layer group. Assuming correctly?
greetings, peter
feature request: clipping mask layer
yahvuu schrieb:
Hi,
Daniel Johannsen schrieb:
I only like to add, that in the layer group it is the alpha value of the lowest layer in the group
which provides the masking effect for the grouped layers above. (And not a layer in the middle or on top of the group.)hmm, special-casing the bottom layer seems a bit odd to me. I'd expect the layer group mask to be a property of the layer group and that all layers within that group have independent transparency of their own.
Looking at your examples, i assume the photoshop behaviour is convenient because you usually start with a layer and subsequently turn that into a layer group. Assuming correctly?
greetings, peter
Hi,
yes, your assumption is right. I start the painting process with layers
only for shapes and silhouettes.
Then i add a "layer group" with the mask property (or in photoshop-terms
a group of "clipping mask"-layers)
to each of the shape-layers. The layers inside the layer group mask define
volume, texture, athmospheric perspective, etc. of the shape they are
connected to.
So to say, the layer group mask has the property of a transparency
value. This value is defined
by the alpha-value of the layer the group is assigned to.
Here is a link that shows the photoshop approach quite well: http://photoshopcontest.com/tutorials/23/clipping-mask-101.html
You are absolutely right, every layer in the layer group should maintain
their independent transparency,
but in addition inherit the transparency of their layer group mask.
greetings, daniel
feature request: clipping mask layer
On Wed, May 20, 2009 at 9:07 PM, Daniel Johannsen wrote:
Hi,
yes, your assumption is right. I start the painting process with layers only for shapes and silhouettes.
Then i add a "layer group" with the mask property (or in photoshop-terms a group of "clipping mask"-layers)
to each of the shape-layers. The layers inside the layer group mask define volume, texture, athmospheric perspective, etc. of the shape they are connected to.So to say, the layer group mask has the property of a transparency value. This value is defined
by the alpha-value of the layer the group is assigned to.Here is a link that shows the photoshop approach quite well: http://photoshopcontest.com/tutorials/23/clipping-mask-101.html
You are absolutely right, every layer in the layer group should maintain their independent transparency,
but in addition inherit the transparency of their layer group mask.
GEGLs XML format implements such per composition subtree masks. It even allows building these masks using other filters, allowing for instance to create a mask for a layer group using a blurred text layer. I've found the underlying technical approach used to represent the GEGL compositing graph as a tree in those systems to provide all the power that should be needed. Finding sufficiently rich mappings to a user interface most probably using some higher level abstract compositing operations remains a challenge for GIMP in exposing such functionality.
An example composition following the underlying model of OpenRaster using low-level operations:
crop
over
translate
apply_opacity
gaussian blur
render text
hue-saturation
subtract
some more noise
multiply
some more noise
some noise pattern
checkerboard
Some of the low-level ops like the combination of translation and a compositing operation like over (and perhaps even the application of opacity) can be folded into a single UI level concept to avoid having too many individual items in the compositing tree. What the aboive example renders is three noise layers that are combined with different layer modes, a blurred piece of text is used as the overall group opacity for the noise and the noise itself is composited over a checkerboard background. Finally the whole image is cropped (this crop op would probably in fact be the canvas dimensions).
See http://create.freedesktop.org/wiki/OpenRaster , http://pippin.gimp.org/oxide/ and http://gegl.org/ for more information.