<div class="gmail_quote">On Wed, Oct 24, 2012 at 7:31 PM, Andre Gemuend <span dir="ltr"><<a href="mailto:scroogie@scroogie.de" target="_blank">scroogie@scroogie.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello everyone,<br>
<br>
sorry for suddenly dropping in here, until now I was only reading this list. I hope you don't mind<br>
that I comment on this issue, because it interests me.<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
We have one (and the only one) division in the composite over: it scales<br>
the result by the new alpha value (srcBlend), so it looks like it cannot be<br>
transformed to multiplication. This single division takes about 20% of<br>
composing time.<br>
</blockquote>
<br>
I just wanted to say that this is a disadvantage of non-premultiplied alpha. You actually<br>
divide out the new alpha value from the new colors, because the result of the composition is by<br>
definition a color premultiplied with alpha.<br>
<br>
Moreover, you do this for every composition, iow a pixel undergoes N divisions,<br>
whereas in the premultiplied case you would only have one division at the very last step, iff<br>
you really need the non-premultiplied value. Its also much easier to implement with premultiplied alpha.<br></blockquote><div><br></div><div>It doesn't do N division per pixel currently, just one.</div><div><br></div>
<div>Beside that using premultiplied alpha causes a loss in <span style="font-family:sans-serif;font-size:13px;line-height:19px;background-color:rgb(255,255,255)">precision</span>.</div></div>