https://bugs.kde.org/show_bug.cgi?id=493436

Noel Santos <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #2 from Noel Santos <[email protected]> ---
I have encountered similar issues when trying to create some effects like a
long shadow by stacking drop shadows in 5.2.9 (see
https://www.virtualcuriosities.com/articles/5346/how-to-create-a-diagonal-long-shadow-effect-in-krita
). Granted that I had a dozen clones of clones of clones, but it still seemed
to take a ridiculously long amount of time for how simple the layer structure
was, specially considering that opening the layer styles dialog requires a full
render first for some reason.

I have no idea how Krita is programmed but my assumption is that Krita isn't
applying the filters/layer styles like a node-based non-linear editor would, by
going one step then the next. Instead, it seems to iterate for every renderable
"cell" on the canvas and try to figure out the pixels of that cell. Presumably
this is optimized for painting so it can blend hundreds of layers in parallel,
but when you use effects there seems to be no optimization. Based on this, my
completely uneducated guess is that Krita is going to a cell, rendering the
entire effect, then cropping it to the cell, then going to the next cell and
rendering it all over again, instead of just reusing the data. That's the only
algorithm I can imagine that would lead to this kind of performance issue.

I believe Krita has a lot of potential with these non-destructive features, so
it's really unfortunate that bugs like these prevent Krita from being used to
its full potential. For now I recommend workarounds like merging a group layer,
selecting it, copying, undoing, and pasting the copied data to use it in an
effect, manually refreshing it from time to time, since waiting the
filters/styles to apply takes just far too long. You can also keep effects in a
separate group with pass through that you can make invisible to prevent Krita
from rendering them.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to