Future of the animation feature
Dmitry Kazakov
dimula73 at gmail.com
Mon Dec 22 09:10:41 UTC 2014
On Sun, Dec 21, 2014 at 6:27 PM, Boudewijn Rempt <boud at valdyas.org> wrote:
But don't think in terms of 'the image' -- if the timeline is outside
> KisImage, we'd generate a KisImage for every frame, with references to the
> nodes used in the timeline.
>
A separate KisImage for every frame is a nice idea, but we need to answer
two questions:
1) How would we handle static layers? Are they going to be duplicated in
every frame? Right now all the types of layers store a pointer to the image
(KisDefaultBounds in every KisNode + a direct pointer in every KisLayer).
Also clone layers have a bidirectional link with its source, which is used
for projection calculation every time. Every paint device inside a layer
also stores a pointer to KisImage via KisDefaultBounds.
These pointers were the reason why I decided to implement LOD by switching
datamanagers inside a paint device, instead of switching paint devices in
layers.
2) Memory management. All the duplicated node will occupy extra memory.
Krita's tile engine has copy-on-write mechanism, but it works only on
direct copies of paint devices. If we save the duplicated nodes into .kra
and load them afterwards, the memory will be duplicated.
---
Dmitry Kazakov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kimageshop/attachments/20141222/3b1af7e3/attachment-0001.html>
More information about the kimageshop
mailing list