Hello Martin,

On Sun, Nov 9, 2008 at 4:36 AM, Martin Nordholts <[EMAIL PROTECTED]> wrote:
> 2. With a 100% opaque Addition mode layer put on top a completely
> transparent layer, the resulting composite becomes 100% opaque
> containing the unblended Addition mode layer pixels when using GEGL, but
> completely transparent when using legacy compositing.
Ah, so if I want to make the result preserve the alpha of the
underlying layer, I'll need to do that via layer mask?

FWIW, since you changed the meaning of the layer modes, is this a good
time to make compositing gamma-correct? Currently, GIMP blends pixels
as if they had gamma == 1.0, whereas the typical is sRGB
(approximation of gamma 2.2). I thought GIMP would do this as it was
switched over to GEGL; it doesn't currently.
1. Create a new square image (with sRGB profile  or no color profile)
2. Fill with black
3. Add another layer
4. Draw a radial gradient white->transparent
5. Set layer mode to Addition
6. Toggle 'View->Use gegl' on and off. The result is identical; rather
than showing a linear blend white -> black, an exponential blend (ie
sRGB) white->black is shown.

Small example images attached, 'wrongblend.png' and 'rightblend.png'.
IMO it is correct for GIMP to produce results similar to
'rightblend.png' when GEGL use is enabled.

> The current plan is to have add kind of compatibility rendering mode so
> that old .xcfs will render the same as in old versions of GIMP also when
> using GEGL.

In this case, we should definitely aim to have gamma-correct blending.
Legacy compatibility for gamma can be done by binding our current
behaviour (pretend the data is gamma 1.0 while it really isn't) to the
'legacy rendering' option (presumably auto-triggered on detection of
legacy XCFs)


<<attachment: wrongblend.png>>

<<attachment: rightblend.png>>

Gimp-developer mailing list

Reply via email to