0
$\begingroup$

System spec: Threadripper 12 core, SSD, 32GB RAM, 2080ti

File details: 40MB .blend 10 million verts in a curve.

File creation details: Curve created via importing of a very large and complex SVG

Blender version: 2.8

System utilization at time of file read: CPU 5%, RAM slowly gets to about 2.5GB.

The initial SVG import took about 90 minutes but I expected that after it was imported and saved as a blend file, it would be much faster to load up, as no SVG import is needed. It still takes over an hour to load and doesn't seem to be using more than 2 cores.

Once I'm in the file it cannot be worked on as just doing something as basic as switching to edit leaves me sat there waiting for it to switch modes. After 15 minutes of waiting I gave up on it, as waiting more than 15m to switch modes would be just unusable. I do plan to split my curve into multiple pieces, but I can't until I can edit it. I can break it up within the SVG, but it save more time if I can just do this in Blender.

Any performance tips would be most appreciated. Thanks.

$\endgroup$
2
$\begingroup$

10m vertices in a curve are a lot, especially since a bezier is subdivided even more between its control points. With a 2D curve, the filled shapes have to be calculated; another unoptimized step.

Some ideas.

  • Simplify the svg before exporting (in the exporter application).
  • Separate the svg in object mode. F3 > "Separate" [search]
  • Reduce the Preview Resolution of the curves.
    simplify
$\endgroup$
  • $\begingroup$ I've looked at the Separate option, but this is offers no options that will separate anything in object mode for my object. I'm trying to convert to mesh at the moment ( so I can go into edit mode, select a bunch of verts, and separate). Mesh from curve appears to be only using 2 cores also, so I'm expecting this to take about 90 minutes for each step. Is it normal for it to keep using only two cores for tasks like opening files and curve to mesh? $\endgroup$ – James Aug 29 '19 at 14:36
  • $\begingroup$ Yes Blender is not optimized in that area. I will look into separate, if it realylly isn't builtin, I can show you how to script it. $\endgroup$ – Leander Aug 29 '19 at 14:38
  • $\begingroup$ There are three options, Seperate by material (not useful for me in this situation), Separate by Selection (not useable in object mode), Separate by loose parts (there are no loose parts). If you know of a way of scripting the chopping up a curve that would be very appreciated. It's a road network curve so it's all flat, being able to chop this up into equal pieces would be extremely helpful, thanks. $\endgroup$ – James Aug 29 '19 at 15:04
  • $\begingroup$ Could you upload and link the file? $\endgroup$ – Leander Aug 29 '19 at 15:20
  • $\begingroup$ If it is a network with intersections, those will be the loose parts. $\endgroup$ – Leander Aug 29 '19 at 15:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.