Comment 2 for bug 330271

Revision history for this message
Troy James Sobotka (troy-sobotka) wrote :

Proxies are used extensively when the technology horsepower can't quite deliver adequate performance. In the case of an Inkscape proxy, it would be a form of pre-rendered caching.

This form of proxy layer would be one that you would not be able to adjust much like a locked layer.

To give a demonstration:

1) Create an HD resolution image of 1920x1080.
2) Create approximately ten objects of larger size.
3) Blur each of them until the system becomes painfully unresponsive - it shouldn't take too long ;).
4) Select the layer and render it to PNG with alpha.
5) Re-load the PNG version as a layer alone.
6) Disable the visibility on the original SVG layer that is causing your system to grind to a halt.

Now you should be able to work with that layer at any resolution and get back nearly all of your processing power. When you want to render off of the actual work, turn on the visibility of all of the SVG layers and disable the visibility of the PNG layers.

IF we can make Inkscape work with proxy layers, we GREATLY enhance its ability to cope with complex images. Seeing as how no performance can assure the end artist / designer that their designs will work 100% of the time, a proxy system such as this provides a mechanism for the individual to produce amazingly complex work in a far more rapid fashion as compared to manually doing the above steps.

The easiest way to enable this would be to perhaps provide an 'auto proxy' for locked layers that automatically does the above behind the scenes in memory OR provide a proxy button.

Logically, I can see no reason why 'locked' couldn't be proxied. Perhaps though, it is wiser for selection purposes and other needs that the layer have an explicit 'proxy' toggle.