[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-kimageshop
Subject:    Re: Release Readiness
From:       Dmitry Kazakov <dimula73 () gmail ! com>
Date:       2012-01-26 13:16:05
Message-ID: CAEkBSfU=K-0mXjK83xRye81NVOuJCS0BeYCO0832BbV1occE8Q () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


> > As for small tiles you can try return the whole image as neededRect().
> But
> > make sure this filter is not available for filter layers, because it can
> > make composition really slow.
> How much of a problem is that now with the "strokes framework" ?
>

The needRect() defines which area of layers below current layer will be
prepared and passed to the current layer. So the merger creates a device,
prepares the image of size needRect() on it, then passes this device to the
current layer. Afterwards, all the data outside changeRect() will be thrown
away. So doing this hack will make the merger to do the same work many
times (exactly, it'll recalculate teh whole image (width/512)*(height/512)
times). Optimizations will not work in the case, because the merges are
based on requestedRect(), not need or change rect).

This hack will not create overhead only on Effect Mask which are the only
mask of their parent layer. In many cases this is the case for preview mask.

-- 
Dmitry Kazakov

[Attachment #5 (text/html)]

<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"> &gt; As for small \
tiles you can try return the whole image as neededRect(). But<br> &gt; make sure this \
filter is not available for filter layers, because it can<br> &gt; make composition \
really slow.<br> </div>How much of a problem is that now with the &quot;strokes \
framework&quot; ?<br></blockquote><div><br>The needRect() defines which area of \
layers below current layer will be prepared and passed to the current layer. So the \
merger creates a device, prepares the image of size needRect() on it, then passes \
this device to the current layer. Afterwards, all the data outside changeRect() will \
be thrown away. So doing this hack will make the merger to do the same work many \
times (exactly, it&#39;ll recalculate teh whole image (width/512)*(height/512) \
times). Optimizations will not work in the case, because the merges are based on \
requestedRect(), not need or change rect).<br> <br>This hack will not create overhead \
only on Effect Mask which are the only mask of their parent layer. In many cases this \
is the case for preview mask.<br><br></div></div>-- <br>Dmitry Kazakov<br>



_______________________________________________
kimageshop mailing list
kimageshop@kde.org
https://mail.kde.org/mailman/listinfo/kimageshop


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic