Performance issues with vector editing



  • Hello, first post of mine!

    The existenceof Vectorstyler was pointed out to me via the Affinity forums. The feature list was intriguing to me, and I decided to give Vectorstyler a whirl.

    I have worked with vector illustration software as a professional and for my own work since the nineties: Freehand, CorelDraw, Illustrator, Inkscape, PhotoLine, Affinity Designer (although Designer still is too basic in terms of vector editing features for my taste, so I mainly use it for certain conversions).

    So far my three-day experience with Vectorstyler is a mixed bag. One the one hand a broad and deep vector editing tool set is on offer, with some unique additions that I only know from 3D apps. Quite surprising for such a young app, and in particular after discovering VS seems developed by one main developer only? If so, my hat off to you, sir!

    On the other hand, I experience major performance and import issues that make it almost impossible to work with Vectorstyler.

    My hardware: 3900X, 128GB, nvidia 3080ti, and working from fast M2 drives and running Windows 10. The initial default performance setup was less than ideal, so I changed it to OpenCL, 24 rendering threads, 24 document threads, and 24 image threads. GPU is activated for both distortion and mesh.

    I always test with the following AI/SVG demo file:

    0_1671780782603_wormwood_test.jpg

    Loading the AI file in VS results in:
    0_1671780990072_AI_result.jpg

    The file loads in a second in Affinity Designer without issues. PhotoLine and Inkscape will not load the AI, and I converted it to SVG in Designer

    After converting the file to SVG, and I tried to load it again in Vectorstyler.
    After waiting approx. 30 minutes it finally loaded (I do like how the user may continue work on other files while a file is loading, btw).

    Loading time for this SVG is (obviously) problematic to say the very least. In PhotoLine and Inkscape it takes ~8-10 seconds, Illustrator takes 2-3 minutes to finish importing.

    This file is a good test for vector editing performance.

    Moving separate parts of the drawing (for example one of the worms) works smooth in Illustrator with Real-Time Drawing and Editing. So does Affinity Designer. PhotoLine has no issues either - not as smooth, but good enough. Inkscape is more problematic (on Windows at least), and is not usable unless I switch to outline.
    Vectorstyler updates with a ~2 frames per second - which is not really usable in my book. It disrupts the creative flow.

    Editing curves and individual shapes works fine in Illustrator (smooth), Inkscape (little less smooth), PhotoLine (smoother than Inkscape), and Affinity Designer (smooth).

    In Vectorstyler again the performance is disappointing: moving points around updates at perhaps 2~3 frames per second. Dragging a curve is worse.

    I then switched to outline mode. Anchor point dragging is butter smooth. But even in that mode dragging a curve will introduce a pause at times. Next, I switched to vector display mode, and turned off Direct Preview Editing, which allowed me to edit a curve smoothly, but it wouldn't give me a real-time visual update of the colours/gradients and take an instant to update.

    In other areas the app also seems to struggle somewhat: adding adjustment layers to objects (even in simple files) and other effects seems to respond slower than expected. For example, I assigned a Gaussian Blur adjustment layer to one of the worms. It takes a second to respond. A larger blur takes a few seconds to respond. I then tried to edit a curve in the blurred object: a lot of lag.

    Perhaps readers might object now: 'yes, but you are editing a curve in a blurred object!". Well, I compare to PhotoLine: there is no impact on performance there at all. I can edit a curve of a vector object that has a Gaussian Blur adjustment layer assigned to it in real-time. Same in Affinity Designer, btw. No lag. Illustrator 'cheats' by lowering the resolution of the effect (but this is still more usable).

    Another thing I noticed is the lag in updating layer thumbnails when switching between files: oddly enough the thumbnails will display the previous file's layer thumbnail previews for just a second before updating. That is distracting as well.

    Lastly, I encountered view corruption of images and mesh gradients (also seen in one of the screenshots above):

    0_1671784750385_corruption_mesh.png

    So, I am a bit torn between how feature-rich Vectorstyler is (perspective grid, Width tool: whot! Just like Illy and Clipstudio Paint - one of my favourite tools!), Symbol spray, a rich variety of noise procedural textures, and pretty much a fully featured vector illustration tool. Nothing important seems to be missing, even though I only played around with it for a few days, of course.

    But as good as all the tools are, the overall performance of VS is seriously holding it back. I tried some of my vector files and I tend to work on a similar level as that test file. But even at lower complexity art, VS is slow to work with. I wouldn't be able to use it for mid-level complex artwork in this state.

    In any case: are the performance issues caused by something on my side? Or is this a known issue? Is the developer working on improving the performance?

    I've sent the SVG and original AI to csraba at vectorstyler.com for inspection.


  • administrators

    @Bones Hi, and Welcome to VectorStyler.

    Is there an "Nvidia" or "CUDA" option in the performance settings?
    For nvidia GPUs that should also be available.

    Got the files in email. I will try to figure this out as soon as possible.
    The AI importing may have some bugs.

    The next few days will be slow 🙂 but this will be high on the bugs list.


  • administrators

    @Bones We will figure this out. Your machine config is great, that is not the problem.
    I think the issue may be with lots of meshes, or some VectorStyler settings causing compatibility issues.



  • @VectorStyler Under Compute Engine only OpenCL is available.

    I have no issues with CUDA being used in other apps, though.



  • Welcome @Bones

    just an info, because you mentioned ClipStudio Paint, you can copy
    vector graphics from CSP via "Copy as SVG" over clipboard
    into VectorStyler.

    The other way around is also possible, in VS set Preferences > Performance > Copy as SVG.
    Unfortunately here there are some restrictions which are CSP related.

    In this thread (belowe the middle) you can find examples

    https://www.vectorstyler.com/forum/topic/1946/perspective-tool/15





  • @Ingolf said in Performance issues with vector editing:

    Hi @Bones

    Looks like you have read this book, eh? 🙂
    Vector Basic Training: A Systematic Creative Process for Building Precision Vector Artwork

    Indeed! I used it in Illustrator classes that I taught until a few years ago. I still recommend it to this day to anyone starting out or wishing to improve their curve control. One-in-a-kind book on the subject in my opinion. ✍ 💪



  • @Subpath Thanks for the tip.

    Tried it in ClipStudio Paint, and it works. I also attempted to copy SVG from / to PhotoLine, but that doesn't work as well. Copy from PL to SV works, but not the other way around.

    I use PhotoLine as my main image editor/hub, and PhotoLine includes a feature for a round-trip workflow for sending layers to another design app. It works fine with Inkscape, but unfortunately not (yet?) with Vectorstyler.

    Is it possible to save directly to SVG from Vectorstyler and overwrite the original SVG file without the interruption of an export dialog?



  • @Bones said in Performance issues with vector editing:

    @Ingolf said in Performance issues with vector editing:
    Indeed! I used it in Illustrator classes that I taught until a few years ago. I still recommend it to this day to anyone starting out or wishing to improve their curve control. One-in-a-kind book on the subject in my opinion. ✍ 💪

    Fascinating! It's one of those old world books that shows what the old world could do. A writer and creative who is not only skilled, but methodical in a clear-eyed way. And who can even explain himself, simply.

    I don't have many physical non-fiction books on my otherwise large bookshelf because so few, so useful, have been written.



  • @Ingolf Agreed!

    I do still teach other classes once in a while, and when I see students work on their Illustrator assignments I always sigh to myself. Not because their design thinking is questionable (it generally isn't) but because the quality of their curve work is.

    A quick explanation of the clockwork method helps them on their way.

    Most students start designing on the screen with a mouse. I never understood that: I either start sketching on paper or on a tablet/cintiq/wacom. At least a few students use a tablet with pen nowadays - and those students tend to produce the better work 🙂

    Another reason why I like Von's book: he starts on paper.



  • @Bones said in Performance issues with vector editing:

    Hello, first post of mine!
    The existenceof Vectorstyler was pointed out to me via the Affinity forums. The feature list was intriguing to me, and I decided to give Vectorstyler a whirl.

    And welcome! You will feel at home here, this is a more focused forum without fuss and noise, and thank you for your initial and thorough feedback.

    I've actually experienced slower performance myself in a few test documents, but so far nothing that has affected my real work. It's on my list of topics to report in here, but I'm dripping bug reports in priority order, and performance I'd report once I've made a real life document that can be used as documentation.

    We've kept @vectorstyler very busy and well entertained over the last few years with many, many bug reports and feature requests, many of which have been fixed. So it's really self-help to actively report bugs or issues; it actually fixes them for the benefit of oneself or everyone. As you have now experienced yourself, your feedback is listened to promptly and seriously.

    There's a lot really built up and into Vectorstyler, so I'm probably going to recommend @VectorStyler to spend some months or so on optimizations centrally in the engine room, but it's really something that requires knowing the needs and real use of the customers. But at some point, people throw up posters like the one from the book. And more complex than that.

    I myself have stopped throwing complex test documents into programs, and instead test them with my own projects and workflows, it gives a more accurate picture of whether I like the programs and whether they do what I need them to do. It also gives me a better idea of the background to the bugs I'm reporting.

    And most importantly, I guess, customers' real production problems are solved.

    You've come into Vectorstylers life relatively early, so there will be bugs to fix and implementations to improve or redesign along the way. As mentioned, active participation is beneficial, and bug fixes are released regularly. In 2022 alone, Vectorstyler has become noticeably better and more beautiful, thanks to everyone in here, and especially thanks to the most active and listening developer on the planet. 💕

    You can see what's in the pipeline here:
    https://www.vectorstyler.com/roadmap/



  • @Bones said in Performance issues with vector editing:

    Is it possible to save directly to SVG from Vectorstyler and overwrite the original SVG file without the interruption of an export dialog?

    I am not sure, but I think no.

    Whereas I don't really see the export panel as a hindrance.
    Because once you set your export format, it stays set.
    Then it is enough to confirm it with the Enter key when it appears.
    .
    .
    I assume Inkscape uses .SVG to exchange data via clipboard.

    Then, i think, exchange data via clipboard from VS to PL should also
    work, if you set at "Performance", "Copy as SVG" in VS Preferences.


  • administrators

    @Bones said in Performance issues with vector editing:

    Is it possible to save directly to SVG from Vectorstyler and overwrite the original SVG file without the interruption of an export dialog?

    Yes. Export first with the regular export dialog (selecting all the options).
    Then save the VS file also (last export settings are stored in the file).

    Then the File -> Export Again can repeat the last export (with all the settings and the file name), even when the file is reopened later.


  • administrators

    @Bones The AI and SVG importing issues will be fixed in the next build.

    About the adjustment layer with blur issue: does this occur in the Wormwood example, or is it slow also with some simple vectors?



  • @VectorStyler said in Performance issues with vector editing:

    @Bones The AI and SVG importing issues will be fixed in the next build.

    About the adjustment layer with blur issue: does this occur in the Wormwood example, or is it slow also with some simple vectors?

    That's a very quick response indeed! Don't you take a break over the holidays? 😉

    The slowdown with adjustment layers occurs with slightly more complex projects. I tried another file which isn't nearly as involved as the Wormwood one, and it still struggles.

    As I said, even the Wormwood example is fine in other design apps when adjustment layers are used (although Illy cheats by decreasing the resolution of the effect while editing).


  • administrators

    @Bones The AI and SVG importing issues should be fixed in build 1.1.072.
    There should be some performance improvement also, when dragging objects.

    Setting the thread count values to too large might not always help. Also try with smaller values, like 8 or 12 for that config.

    The overlapping gradient mesh issues will be fixed later.



  • @VectorStyler

    The newest build loads the SVG file quickly and correctly! Quite impressed with that improvement: classy!

    The AI file also works much better, albeit that the textures are missing.

    Dragging performance works a little better as long as the user is zoomed in somewhat. Zoomed out it still is very slow. Is that because of the anti-aliasing?

    Is there a way to turn off anti-aliasing in VectorStyler?
    Perhaps a performance trick would be to turn off anti-aliasing when curves and objects are edited for the layers that are being worked on?

    For example, in PhotoLine the anti-aliasing may be turned off globally, and it increases editing performance by around 200-300%.



  • @Bones said in Performance issues with vector editing:

    Is there a way to turn off anti-aliasing in VectorStyler?

    For changing anti-aliasing options in VS
    take a look under
    View > Subpixel


  • administrators

    @Bones Anti-aliasing can be turned off using View -> Subpixel -> None.

    But it has only a small impact on redraw performance.

    At what zoom level was this slowdown observed? and is it with the AI import or the SVG (results are different).

    As for the AI file: some features are not (yet) supported, there will be improvement in the future.